* time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
[platform/upstream/glibc.git] / ChangeLog
1 2004-02-09  Roland McGrath  <roland@redhat.com>
2
3         * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
4         24, not 23.
5
6 2004-01-29  Roland McGrath  <roland@redhat.com>
7
8         * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
9         Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
10
11 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
12
13         * libio/genops.c (_IO_cleanup): Do not use locking when flushing
14         the buffers.  Some thread might be using a stream.
15
16 2004-02-09  Andreas Jaeger  <aj@suse.de>
17
18         * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
19         Patch by Jan Beulich <jbeulich@novell.com>.
20
21 2004-02-09  Andreas Schwab  <schwab@suse.de>
22
23         * include/rpc/rpc.h: Declare thread variables with their correct
24         type.
25         * sunrpc/clnt_perr.c: Don't cast thread variables.
26         * sunrpc/clnt_raw.c: Likewise.
27         * sunrpc/clnt_simp.c: Likewise.
28         * sunrpc/key_call.c: Likewise.
29         * sunrpc/svcauth_des.c: Likewise.
30         * sunrpc/svc.c: Likewise.
31         * sunrpc/svc_raw.c: Likewise.
32         * sunrpc/svc_simple.c: Likewise.
33
34 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
35
36         * stdio-common/_i18n_number.h: Support printing localized decimal
37         point and thousand separator.
38         * wctype/wctrans.c: Add __wctrans alias.
39         * include/wctype.h: Declare __wctrans.
40         Based on a patch by Hamed Malek.
41
42         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
43         other than the status bits [BZ #10].
44
45 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
46
47         Make stream locking operations really work.
48         * misc/Makefile (CFLAGS-mntent_r.c): Define.
49         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
50         (CFLAGS-putspent.c): Define.
51         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
52         (CFLAGS-putgrent.c): Define.
53         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
54         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
55
56         * elf/dl-load.c (lose): Use noinline attribute instead of silly
57         alloca to prevent inlining.
58         * elf/dl-runtime.c (fixup): Likewise.
59         (profile_fixup): Likewise.
60
61         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
62         Initialize width correctly.
63
64 2004-02-07  Andreas Jaeger  <aj@suse.de>
65
66         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
67         lvalue.
68         (internal_ucs4le_loop_single): Likewise.
69         (ucs4_internal_loop): Likewise.
70         (BODY): Likewise.
71         (internal_ucs4_loop_single): Likewise.
72         * iconvdata/iso8859-1.c (BODY): Likewise.
73         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
74         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
75         * iconvdata/gb18030.c (BODY): Likewise.
76         * iconvdata/armscii-8.c (BODY): Likewise.
77         * stdlib/msort.c (msort_with_tmp): Likewise.
78
79         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
80         as lvalue.
81
82 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
83
84         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
85         weak extern.
86         (__elf_machine_runtime_setup): Invalidate the instruction cache over
87         the whole range of the PLT.
88
89 2004-02-06  Andreas Schwab  <schwab@suse.de>
90
91         * posix/regcomp.c (build_range_exp): Fix off-by-one.
92         (parse_bracket_exp): Likewise.
93
94 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
95
96         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
97         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
98
99 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
100
101         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
102         (re_search_internal): Pass new parameter to check_matching.
103         (check_matching): Unless a parenthesized group is found at the
104         beginning of the regexp, advance P_MATCH_FIRST until we entered
105         a state different from the initial state.
106
107 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
108
109         * math/libm-test.inc (lround_test): Add new test.
110         (llround_test): Likewise.
111         (lrint_test): Likewise.
112         (llrint_test): Likewise.
113         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
114         with result taking up 20 bits.
115         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
116         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
117         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
118         case with result taking up 31 bits.
119         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
120
121         * po/nl.po: Update from translation team.
122
123 2004-01-30  Andreas Schwab  <schwab@suse.de>
124
125         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
126         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
127         SEGV_PSTKOVF): Remove underscore prefix from definition.
128
129 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
130
131         Merge regex changes in gawk.
132         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
133         of collation elements.
134         * posix/regex.c: Include limits.h.
135         * posix/regex.h: Document REG_ECOLLATE correctly.
136         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
137
138 2004-01-24  Andreas Jaeger  <aj@suse.de>
139
140         * malloc/obstack.h: Import gnulib version.
141         * malloc/obstack.c: Likewise.
142
143 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
144
145         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
146         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
147         increment dl_load_adds.
148         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
149         with equivalent GL(dl_load_adds - GL(dl_nloaded).
150         (dl_iterate_phdr): Likewise.
151         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
152         * elf/dl-support.c: Remove global variable _dl_load_subs.
153         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
154         _dl_load_subs member.
155
156 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
157
158         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
159         (_dl_start): And neither here.
160         (dl_main): Set GL(dl_loaded)->l_relro_* and
161         GL(dl_rtld_map)->l_relro_*.
162
163 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
164
165         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
166         _dl_load_adds and _dl_load_subs.
167         * elf/dl-support.c (_dl_load_adds): New variable.
168         (_dl_load_subs): Likewise.
169         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
170         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
171         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
172         dlpi_subs.
173         * include/link.h: Likewise.
174         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
175         and dlpi_subs members.
176         (dl_iterate_phdr): Likewise.
177         * elf/tst-dlmodcount.c: New file.
178         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
179         (tests): If build-shared, mention tst-dlmodcount.
180         ($(objpfx)tst-dlmodcount): If build-shared, build and
181         run tst-dlmodcount.
182
183 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
184
185         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
186         into...
187         (_dl_protect_relro): New routine.
188         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
189         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
190         from bootstrap_map.
191         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
192         Call _dl_protect_relro for libraries if prelinking.
193
194 2004-01-23  Richard Henderson  <rth@redhat.com>
195
196         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
197         * sysdeps/alpha/fpu/Versions (libm): Likewise.
198         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
199         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
200
201 2004-01-22  Andreas Jaeger  <aj@suse.de>
202
203         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
204         avoid warnings for builtin function log2.
205
206         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
207         information.
208
209 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
210
211         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
212         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
213         Patch by Davide Libenzi.
214
215         * sysdeps/unix/sysv/linux/kernel-features.h: Define
216         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
217
218         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
219
220         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
221         instead of loff_t.  Include <fcntl.h>.
222         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
223         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
224         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
225         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
226         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
227         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
228         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
229         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
230         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
231         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
232         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
233         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
234
235         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
236
237         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
238
239 2003-12-31  Bruno Haible  <bruno@clisp.org>
240
241         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
242         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
243         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
244         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
245         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
246         0x00 0x20. Don't map U+2500..U+25E3.
247
248 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
249
250         * posix/regexec.c (get_subexp): Remove bkref_str variable.
251         Extend buffers if needed before comparisons.
252         (get_subexp_sub): Handle clean_state_log_if_needed failure.
253
254 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
255
256         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
257         atomic_decrement.  Patch by Davin McCall.
258
259 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
260
261         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
262         (__sim_disabled_exceptions, __sim_round_mode): Declare with
263         hidden data and nocommon.
264         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
265         (__sim_disabled_exceptions, __sim_round_mode): Use
266         libc_hidden_proto.
267         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
268         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
269
270 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
271
272         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
273         PT_IA_64_HP_STACK.
274
275 2004-01-16  Richard Henderson  <rth@redhat.com>
276
277         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
278         (__libc_enable_secure_internal): Likewise.
279
280         * elf/dl-load.c: Don't declare __libc_stack_end.
281         * sysdeps/generic/libc-start.c: Likewise.
282         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
283         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
284         * sysdeps/generic/backtrace.c: Likewise.
285
286 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
287
288         * Versions.def: Add GLIBC_2.3.4.
289
290 2004-01-15  Richard Henderson  <rth@redhat.com>
291
292         * sysdeps/unix/alpha/sysdep.h: Revert last change.
293
294 2004-01-15  Richard Henderson  <rth@redhat.com>
295
296         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
297
298         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
299         !samegp relocation.
300
301 2004-01-15  Richard Henderson  <rth@redhat.com>
302
303         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
304         ucontext-offsets.sym.
305         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
306         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
307         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
308         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
309         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
310
311 2004-01-15  Richard Henderson  <rth@redhat.com>
312
313         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
314         __syscall_, move nop inside, adjust users by +4.
315
316 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
317
318         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
319         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
320         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
321         symbols.
322         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
323         gen-as-const-headers.
324         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
325         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
326         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
327         * sysdeps/unix/sysv/linux/kernel-features.h
328         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
329         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
330         Declare mcontext_t inline and include altivec state for 64-bit.
331         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
332         versions for setcontext, getcontext, and swapcontext.
333
334         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
335         versions for setcontext, getcontext, swapcontext, and makecontext.
336         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
337         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
338         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
339         Compatible with GLIBC_2.3.3 release.
340         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
341         (__makecontext): Use parm save area instead of compiler_dw to hold
342         context pointer.
343         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
344         (__setcontext):  Upgrade to restore Altivec regs and version
345         GLIBC_2_3_4.
346         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
347         Compatible with GLIBC_2.3.3 release.
348         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
349         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
350         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
351         Compatible with GLIBC_2.3.3 release.
352         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
353         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
354
355 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
356
357         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
358         versions for setcontext, getcontext, swapcontext, and makecontext.
359         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
360         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
361         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
362         Compatible with GLIBC_2.3.3 release.
363         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
364         (__makecontext): Upgrade to align for Altivec regs and version
365         GLIBC_2_3_4.
366         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
367         Compatible with GLIBC_2.3.3 release.
368         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
369         (__setcontext):  Upgrade to restore Altivec regs and version
370         GLIBC_2_3_4.
371         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
372         Compatible with GLIBC_2.3.3 release.
373         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
374         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
375         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
376         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
377         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
378         (_UC_VSCR, _UC_VRSAVE): Define.
379         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
380         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
381
382 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
383
384         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
385
386 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
387
388         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
389         parameter type.
390
391 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
392
393         * elf/elf.h: Fix typo in comment.
394
395         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
396         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
397
398         * resolv/resolv.h: Add RES_USEBSTRING.
399         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
400         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
401         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
402         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
403         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
404         Otherwise use the two nibble formats.
405
406 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
407
408         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
409         * config.h.in: Add entry for HAVE_Z_RELRO.
410         * include/libc-symbols.h: Define attribute_relro.
411         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
412         max_capstrlen, and max_dirnamelen definitions.
413         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
414         load_time, start_time, library_path, preloadlist, version_info,
415         any_debug.
416         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
417         it to print_statistics.  Change print_statistics accordingly.
418         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
419         attribute_relro instead of explicitly assigning variable to the
420         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
421         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
422         _dl_argv, _dl_argv_internal with attribute_relro.
423
424 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
425
426         * Makerules (gen-as-const): Don't silently continue on failure.
427
428 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
429
430         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
431         rtld_hidden_data_def.
432
433 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
434
435         * libio/libio.h: Add const to function tables types.
436         * libio/libioP.h: Likewise.
437         * login/utmp-private.h: Likewise.
438         * libio/fileops.c: Add const to jump table variable definition.
439         * libio/genops.c: Likewise.
440         * libio/iofopncook.c: Likewise.
441         * libio/iopopen.c: Likewise.
442         * libio/memstream.c: Likewise.
443         * libio/obprintf.c: Likewise.
444         * libio/oldfileops.c: Likewise.
445         * libio/oldiopopen.c: Likewise.
446         * libio/strops.c: Likewise.
447         * libio/vsnprintf.c: Likewise.
448         * libio/vswprintf.c: Likewise.
449         * libio/wfileops.c: Likewise.
450         * libio/wstrops.c: Likewise.
451         * login/getutent_r.c: Likewise.
452         * login/getutid_r.c Likewise.
453         * login/getutline_r.c: Likewise.
454         * sysdeps/generic/utmp_file.c: Likewise.
455
456 2004-01-09  Bruno Haible  <bruno@clisp.org>
457
458         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
459         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
460         (_nl_load_domain): Treat major revision 1 like major revision 0.
461
462 2004-01-11  Bruno Haible  <bruno@clisp.org>
463
464         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
465         width or precision has been seen.
466
467 2004-01-08  Bruno Haible  <bruno@clisp.org>
468
469         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
470         dependent segment not known to this version of the library, ignore
471         the string pair instead of crashing.
472
473 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
474
475         * configure.in: Rewrite test to give gcc to clean up after itself.
476         Patch by Greg Schafer.
477
478         * posix/regex.c: Support crappy compilers and platforms which have
479         problems with alloca.
480         * posix/regex_internal.h: Likewise.
481         Patch by Paolo Bonzini.
482
483 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
484
485         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
486         Drop code to support this, it is never true.
487         (build_range_exp) [!_LIBC]: Do not create a range
488         in MBCSET for a single-byte character set.
489         (build_range_exp) [_LIBC]: Do not create a range
490         in MBCSET for a single-byte character set without
491         collation elements.
492         (init_dfa): Do not conditionalize on _LIBC, it
493         just makes the code less clear.
494         (parse_bracket_exp): Use NON_MATCH variable in
495         addition to "mbcset->non_match", not as an
496         alternative.
497         (build_charclass_op): rename NOT parameter to
498         NON_MATCH, use it instead of declaring a variable.
499         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
500         if the character set is single-byte.
501
502 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
503
504         * posix/regcomp.c (peek_token_bracket): Check remaining
505         string length before re_string_peek_byte (x, 1).
506         (parse_bracket_symbol): Likewise.
507         * posix/regex_internal.h (re_string_is_single_byte_char): Return
508         true at last byte in the string.
509         * posix/bug-regex22.c (main): Add new test.
510
511 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
512
513         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
514         .data.rel.ro.
515
516         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
517
518         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
519         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
520         rtld_hidden_def and move into .data.rel.ro section.
521         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
522         rtld_hidden_proto.
523         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
524         if !SHARED.
525
526 2004-01-13  Richard Henderson  <rth@redhat.com>
527
528         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
529
530 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
531
532         * sysdeps/unix/sysv/linux/dl-execstack.c
533         (_dl_make_stack_executable): Move common code in front.  Use
534         __builtin_expect.
535
536         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
537         challenge for caller.
538         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
539         member in rtld_global appropriately.
540         * elf/dl-support.c: Likewise.
541         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
542         Pass it on to the changed function.
543         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
544
545 2004-01-13  Richard Henderson  <rth@redhat.com>
546
547         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
548         Cast old up to uint64_t before back down to inner width.
549         (__arch_compare_and_exchange_xxx_16_int): Likewise.
550         (__arch_compare_and_exchange_xxx_32_int): Likewise.
551         (__arch_compare_and_exchange_xxx_64_int): Likewise.
552         (__arch_compare_and_exchange_val_8_int): Cast result to
553         the type of the memory.
554         (__arch_compare_and_exchange_val_16_int): Likewise.
555         (__arch_compare_and_exchange_val_32_int): Likewise.
556         (__arch_compare_and_exchange_val_64_int): Likewise.
557         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
558         (atomic_compare_and_exchange_bool_rel): Likewise.
559
560         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
561         based on HAVE___THREAD instead of USE_TLS.
562
563         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
564         (__adjtimex_tv64): Use it.
565
566         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
567         to void* rather than directly to the compatibility structure type.
568         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
569
570         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
571         Forward declare.
572
573 2004-01-13  Richard Henderson  <rth@redhat.com>
574
575         * Versions.def (libm): Add GLIBC_2.3.3.
576         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
577         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
578         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
579         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
580         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
581         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
582         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
583         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
584         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
585         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
586         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
587         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
588         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
589         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
590         functions for gcc 3.3.
591
592         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
593         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
594         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
595         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
596         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
597         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
598         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
599         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
600         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
601         weak_alias if the function name has been #defined.
602
603         * math/cabsf.c: Move ...
604         * sysdeps/generic/cabsf.c: ... here.
605         * math/cargf.c: Move ...
606         * sysdeps/generic/cargf.c: ... here.
607         * math/cimagf.c: Move ...
608         * sysdeps/generic/cimagf.c: ... here.
609         * math/conjf.c: Move ...
610         * sysdeps/generic/conjf.c: ... here.
611         * math/crealf.c: Move ...
612         * sysdeps/generic/crealf.c: ... here.
613
614 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
615
616         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
617         LDFLAGS.so and LDFLAGS-rtld.
618         (+link): Add relro-LDFLAGS.
619         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
620         __libc_thread_subfreeres sections after .jcr section.
621         * config.make.in: Add have-z-relro.
622         * configure.in: Add check for -z relro option.
623         * include/link.h (struct link_map): Add relro_addr and relro_size
624         members.
625         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
626         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
627         part of loaded segments read-only.
628         * elf/elf.h: Define PT_GNU_RELRO.
629         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
630         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
631         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
632         relocations.
633
634 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
635
636         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
637
638 2004-01-11  Andreas Jaeger  <aj@suse.de>
639
640         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
641
642 2004-01-10  Andreas Jaeger  <aj@suse.de>
643
644         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
645         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
646         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
647         * sysdeps/x86_64/strcspn.S: Likewise.
648         * sysdeps/x86_64/strspn.S: Likewise.
649
650 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
651
652         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
653         right before syscall and cfi_startproc before PSEUDO_END.
654         Clear %rbp in thread_start.
655
656 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
657
658         * posix/regcomp.c (regcomp): Fix comment typo.
659         (regfree): Free preg->translate, clear buffer, allocated, fastmap
660         and translate fields.
661
662         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
663         argument to unsigned RE_TRANSLATE_TYPE.
664         * posix/regex_internal.h (re_string_t): Change trans type to
665         unsigned RE_TRANSLATE_TYPE.
666         * posix/regex_internal.c (re_string_construct_common): Cast
667         trans to unsigned RE_TRANSLATE_TYPE.
668         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
669         path if pstr->trans.  Never translate the character through
670         pstr->trans.
671         * posix/Makefile (tests): Add bug-regex22.
672         (bug-regex22-ENV): Set.
673         * posix/bug-regex22.c: New test.
674
675 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
676
677         * posix/regex_internal.c (re_node_set_add_intersect,
678         re_node_set_merge): Rewritten.
679         (re_node_set_insert, re_node_set_remove_at):
680         Avoid memmove, we know what direction we should copy and that we
681         are copying 32-bit words.
682         (re_node_set_compare): Iterate backwards.
683
684 2003-12-30  Paul Eggert  <eggert@twinsun.com>
685
686         * time/mktime.c (verify): New macro.
687         (time_t_is_integer, twos_complement_arithmetic,
688         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
689         C99_integer_division): Document these longstanding assumptions in the
690         code, and verify them at compile-time.
691
692 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
693
694         * posix/regex_internal.h (re_match_context_t): Add dfa member.
695         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
696         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
697         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
698         sift_states_backward, update_cur_sifted_state, check_dst_limits,
699         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
700         check_subexp_matching_top, transit_state_sb, transit_state_mb,
701         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
702         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
703         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
704         (re_search_internal): Initialize mctx.dfa.
705
706         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
707
708         * posix/regex_internal.h (re_dfa_t): Add syntax field.
709         * posix/regcomp.c (parse): Initialize dfa->syntax.
710         * posix/regexec.c (acquire_init_state_context,
711         prune_impossible_nodes, check_matching, check_halt_state_context,
712         proceed_next_node, sift_states_iter_mb, sift_states_backward,
713         update_cur_sifted_state, sift_states_bkref, transit_state,
714         transit_state_sb, transit_state_mb, transit_state_bkref,
715         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
716         build_trtable): Remove preg argument, add dfa argument instead
717         and remove dfa = preg->buffer initialization in the body.
718         Adjust all callers.
719         (check_node_accept_bytes, group_nodes_into_DFAstates,
720         check_node_accept): Likewise.  Use dfa->syntax instead of
721         preg->syntax.
722         (check_arrival_add_next_nodes): Remove preg argument.
723
724         * posix/regex_internal.h (re_match_context_t): Make input
725         re_string_t instead of a pointer to it.
726         * posix/regex_internal.c (re_string_construct_common): Don't clear
727         pstr here...
728         (re_string_construct): ... but only here.
729         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
730         initialize fields to zero.
731         (re_search_internal): Move input into mctx.input.
732         (acquire_init_state_context, check_matching,
733         check_halt_state_context, proceed_next_node,
734         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
735         transit_state, transit_state_sb, transit_state_mb,
736         transit_state_bkref, get_subexp, check_arrival,
737         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
738         Change mctx->input into &mctx->input and mctx->input->field into
739         mctx->input.field.
740
741 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
742             Paolo Bonzini  <bonzini@gnu.org>
743
744         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
745         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
746         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
747         (re_string_context_at, re_string_reconstruct): Remove last argument.
748         * posix/regex_internal.c (re_string_allocate): Initialize
749         pstr->word_char and pstr->word_ops_used.
750         (re_string_context_at): Remove newline_anchor argument.
751         Use input->newline_anchor instead, swap && conditions.
752         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
753         Use input->word_char bitmap instead of IS_WORD_CHAR.
754         (re_string_reconstruct): Likewise.
755         Adjust re_string_context_at caller.
756         * posix/regexec.c (acquire_init_state_context,
757         check_halt_state_context, transit_state, transit_state_sb,
758         transit_state_mb, transit_state_bkref, check_arrival,
759         check_node_accept): Adjust re_string_context_at and
760         re_string_reconstruct callers.
761         (re_search_internal): Likewise.  Set input.newline_anchor.
762         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
763         * posix/regcomp.c (init_word_char): Change return type to void.
764         Set dfa->word_ops_used.
765         (free_dfa_content): Don't free dfa->word_char.
766         (parse_expression): Remove error handling for init_word_char.
767
768 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
769
770         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
771         bitfield.
772
773         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
774
775 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
776
777         * posix/getconf.c: Update copyright year.
778         * nss/getent.c: Likewise.
779         * nscd/nscd_nischeck.c: Likewise.
780         * iconv/iconvconfig.c: Likewise.
781         * iconv/iconv_prog.c: Likewise.
782         * elf/ldconfig.c: Likewise.
783         * catgets/gencat.c: Likewise.
784         * csu/version.c: Likewise.
785         * elf/ldd.bash.in: Likewise.
786         * elf/sprof.c (print_version): Likewise.
787         * locale/programs/locale.c: Likewise.
788         * locale/programs/localedef.c: Likewise.
789         * nscd/nscd.c (print_version): Likewise.
790         * debug/xtrace.sh: Likewise.
791         * malloc/memusage.sh: Likewise.
792         * malloc/mtrace.pl: Likewise.
793
794 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
795
796         * stdlib/strfmon.c: Make formatting of left-justified currency
797         values match the the POSIX standard.  When using format string
798         "[%-14#5.4n]" to print -123.45, the result should be
799         "[-$   123.4500 ]", not "[-$123.4500    ]".
800
801 2004-01-01  Andreas Jaeger  <aj@suse.de>
802
803         * resolv/Makefile (generated): New.
804
805 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
806
807         * CONFORMANCE: Update.
808
809 2003-12-30  Paul Eggert  <eggert@twinsun.com>
810
811         * time/mktime.c: (my_mktime_localtime_r):
812         Remove.  All uses changed to __localtime_r.
813         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
814         get its implementation.
815         Fix compile-command to allow for TIME_R_POSIX.
816
817         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
818         Remove.  All uses changed to __localtime_r and __gmtime_r.
819         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
820         Include "time_r.h" to get their implementations.
821
822         * time/timegm.c: Allow use in GNU applications outside glibc.
823         [defined HAVE_CONFIG_H]: Include <config.h>.
824         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
825         Define __gmtime_r, and declare __mktime_internal.
826         (timegm): Define via a prototype, since we can safely assume C89 now.
827
828         * time/mktime.c (check_result): Use less-confusing report format.
829         "long" -> "long int", as per usual GNU style.
830         (main): Likewise.
831         Don't loop if the iteration overflows time_t.
832         Allow a negative step in the iteration.
833
834         * time/mktime.c: Assume freestanding C89 or better.
835         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
836         assume they're 1.
837         (__P): Remove; not used.
838         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
839         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
840         Prototypes use const * where appropriate.
841         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
842         which caused the testing code to dump core on some hosts.
843
844 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
845
846         * locale/setlocale.c (setlocale): Avoid duplicating locale names
847         if we can reuse old strings.
848
849         * inet/rcmd.c: Provide better error message in case of unknown
850         host.  Remove USE_IN_LIBIO.
851
852         * nscd/nscd.init: Updated version, more conforming with current
853         init file standards.
854
855         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
856         /var/run/nscd directory.
857         (_PATH_NSCDSOCKET): Likewise.
858
859         * test-skeleton.c (timeout_handler): Fix error message.
860
861         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
862         CNT == 0.
863
864 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
865
866         * posix/regexec.c (get_subexp): Only set bkref_str after the first
867         loop, use buf + bkref_str_off in the loop instead.
868         * posix/bug-regex11.c (tests): Add 3 new tests.
869
870         * posix/regexec.c (clean_state_log_if_need): Rename to...
871         (clean_state_log_if_needed): ...this.
872         (transit_state_mb, get_subexp_sub): Adjust callers.
873
874         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
875         failed.  Reported by Steve Grubb.
876
877 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
878
879         * elf/elf.h: Add a few definitions from Solaris 9.
880
881 2003-12-29  Andreas Schwab  <schwab@suse.de>
882
883         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
884         $(fno_unit_at_a_time) to avoid reordering assembler output.
885
886 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
887
888         * posix/regexec.c (re_copy_regs): Revert comment change.
889         Avoid memory leak if realloc fails.
890         (proceed_next_node): Return -2 if re_node_set_insert fails.
891         Return -2 if push_fail_stack fails.
892         (push_fail_stack): Change fs->alloc only after successful realloc.
893         (pop_fail_stack): Formatting.
894         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
895         (check_arrival_add_next_nodes): Merge identical statements
896         from if branches.
897
898         * signal/Makefile (tests): Add tst-raise.
899         * signal/tst-raise.c: New test.
900
901 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
902
903         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
904
905         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
906         (push_fail_stack): Add missing check for failed memory allocation.
907
908         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
909         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
910         _IO_putwc_unlocked.
911
912 2003-12-28  Andreas Jaeger  <aj@suse.de>
913
914         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
915         overflow for 0 as argument. Raise Invalid exception for negative args.
916         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
917         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
918         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
919         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
920         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
921         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
922         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
923         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
924         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
925         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
926         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
927
928         * math/libm-test.inc (yn_test): Expect invalid exception for
929         negative arguments.
930         (y0_test): Likewise.
931         (y1_test): Likewise.
932
933         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
934         execptions for exp(NaN).
935
936 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
937
938         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
939         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
940         among the tokens, rather than among the epsilon-transiting nodes.
941         (re_token_t): Add the opt_subexp flag.
942         * posix/regcomp.c (optimize_utf8, calc_first,
943         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
944         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
945         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
946         OP_DUP_ASTERISK and marking optional subexpressions
947         as such using mark_opt_subexp.
948         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
949         and pass it to update_regs.
950         (update_regs): Use the PREV_INDEX_MATCH parameter, together
951         with the opt_subexp flag, in order to discard a final empty
952         match of a repeated subexpression.
953         * posix/BOOST.tests: Adjust test vectors.
954         * posix/PCRE.tests: Likewise.
955         * posix/rxspencer/tests: Likewise.
956
957 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
958
959         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
960         with omitted middle operand.
961
962 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
963
964         * posix/regcomp.c: Remove C99-ism.
965         * posix/tst-rxspencer.c: Likewise.
966         Based on a patch by Alex Davis <alex14641@yahoo.com>.
967
968 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
969
970         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
971         (re_string_allocate, re_string_construct, re_string_reconstruct,
972         re_string_realloc_buffers, build_wcs_buffer,
973         build_wcs_upper_buffer, build_upper_buffer,
974         re_string_translate_buffer, re_string_destruct,
975         re_string_elem_size_at, re_string_char_size_at,
976         re_string_wchar_at, re_string_context_at,
977         re_node_set_alloc, re_node_set_init_1
978         re_node_set_init_2, re_node_set_init_copy,
979         re_node_set_add_intersect, re_node_set_init_union,
980         re_node_set_merge, re_node_set_insert
981         re_node_set_compare, re_node_set_contains
982         re_node_set_remove_at, re_dfa_add_node,
983         re_acquire_state, re_acquire_state_context,
984         free_state): Add internal_function to declaration.
985
986         * posix/regexec.c (match_ctx_init, match_ctx_clean,
987         match_ctx_free, match_ctx_free_subtops,
988         match_ctx_add_entry, search_cur_bkref_entry,
989         match_ctx_clear_flag, match_ctx_add_subtop,
990         match_ctx_add_sublast, sift_ctx_init,
991         re_search_internal, re_search_2_stub, re_search_stub,
992         re_copy_regs, acquire_init_state_context,
993         prune_impossible_nodes, check_matching,
994         check_halt_node_context, check_halt_state_context
995         update_regs, proceed_next_node, push_fail_stack,
996         pop_fail_stack, set_regs, free_fail_stack_return,
997         sift_states_iter_mb, sift_states_backward
998         update_cur_sifted_state, add_epsilon_src_nodes,
999         sub_epsilon_src_nodes, check_dst_limits,
1000         check_dst_limits_calc_pos, check_subexp_limits,
1001         sift_states_bkref, clean_state_log_if_need,
1002         merge_state_array, transit_state,
1003         check_subexp_matching_top, transit_state_sb,
1004         transit_state_mb, transit_state_bkref,
1005         get_subexp, get_subexp_sub, find_subexp_node,
1006         check_arrival, check_arrival_add_next_nodes,
1007         find_collation_sequence_value, check_arrival_expand_ecl,
1008         check_arrival_expand_ecl_sub, expand_bkref_cache,
1009         build_trtable, check_node_accept_bytes, extend_buffers,
1010         group_nodes_into_DFAstates, check_node_accept): Likewise.
1011
1012         * posix/regex_internal.c (re_string_construct_common,
1013         re_string_skip_chars, create_newstate_common,
1014         register_state, create_ci_newstate, create_cd_newstate,
1015         calc_state_hash): Likewise.
1016         (re_string_peek_byte_case, re_fetch_byte_case): Change
1017         declaration from ANSI to K&R.
1018
1019 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
1020
1021         * posix/regexec.c (build_trtable): Don't allocate the trtable
1022         until state->word_trtable is known.  Don't hardcode UINT_BITS
1023         iterations on each bitset item.
1024
1025 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
1026
1027         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
1028         Initialize REF before passing it to _dl_lookup_symbol.
1029
1030 2003-12-21  Roland McGrath  <roland@frob.com>
1031
1032         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
1033
1034 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
1035
1036         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
1037         2003-11-24 changes.
1038         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
1039         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
1040         * posix/bug-regex19.c (tests): Add new tests.
1041
1042         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
1043
1044         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
1045         after checking syntax.  Optimize.
1046         (calc_first): Fix comment.
1047         * posix/bug-regex13.c (tests): Add new tests.
1048
1049 2003-12-21  Roland McGrath  <roland@redhat.com>
1050
1051         * manual/arith.texi (Parsing of Integers): Typo fix.
1052
1053 2003-12-20  Roland McGrath  <roland@frob.com>
1054
1055         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
1056         add missing dereference of IFREQS before counting loop.
1057
1058 2003-12-21  Andreas Schwab  <schwab@suse.de>
1059
1060         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
1061         constraints.
1062
1063 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
1064
1065         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
1066
1067 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
1068
1069         * stdio-common/printf_fp.c: Add support to use alternative decimal
1070         digits.
1071         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
1072         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
1073
1074 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1075
1076         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
1077         reload PIC if we need to call __syscall_error, cleanup asm.
1078
1079 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
1080
1081         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
1082         FE_ALL_EXCEPT before complimenting.
1083         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
1084         and gcc '+r' constraint.
1085         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
1086         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
1087         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
1088         exception bits, OR with envp, pass to fesetenv.
1089         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
1090         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
1091         triggered by M_PI/69.69 converted to single precision.
1092         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
1093         bits not raised exception bits.
1094
1095         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
1096         correct build strings.
1097         * sysdeps/hppa/dl-fptr.h: New file.
1098         * sysdeps/hppa/dl-fptr.c: Removed.
1099         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
1100         remove const qualifier for map.
1101         (_dl_function_address): Removed.
1102         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
1103         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
1104         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
1105         DL_DT_FINI_ADDRESS use the previous two macros.
1106
1107 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
1108
1109         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
1110         (tr_memalignhook): New function.
1111         (mtrace): Register tr_memalignhook.
1112         (muntrace): Deregister tr_memalignhook.
1113         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
1114         call it directly instead of memalign_internal.
1115
1116 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1117
1118         * misc/mntent_r.c: Change encoding to match recently changed decoder.
1119         Patch by Alexander Achenbach <xela@slit.de>.
1120
1121 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1122
1123         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
1124         vrregset_t.
1125
1126 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
1127
1128         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
1129         conditional to include typedef elf_vrreg_t.
1130
1131 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
1132
1133         * posix/regexec.c (re_search_internal): Limit search to the
1134         beginning of the buffer if the initial states are empty for
1135         contexts that do not include CONTEXT_BEGBUF or, if
1136         !preg->newline_anchor, that do not include any one of
1137         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
1138
1139 2003-12-17  Andreas Jaeger  <aj@suse.de>
1140
1141         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
1142         Kevin Pedretti <pedretti@ieee.org>.
1143
1144 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
1145
1146         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
1147         removes the visibility attributes which might be defined earlier
1148         for some gcc versions.  Instead spell out what strong_alias does
1149         plus the visibility.
1150
1151 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
1152
1153         * posix/regex_internal.h: Make sure the regex code compile
1154         with non-GCC compilers by hiding attributes.
1155
1156 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
1157             Paolo Bonzini  <bonzini@gnu.org>
1158
1159         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
1160         dests_ch items that are empty.
1161
1162 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1163
1164         * posix/regexec.c (check_arrival): Remove duplicate test.
1165
1166 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
1167
1168         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
1169         * posix/regex_internal.c: Likewise.
1170         * posix/regexec.c: Likewise.
1171         Patch by Paolo Bonzini.
1172
1173 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
1174
1175         * posix/regex_internal.c (re_acquire_state_context):
1176         Compare the node sets after all the other comparisons.
1177
1178 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
1179
1180         * posix/regexec.c (find_subexp_node, check_arrival,
1181         check_arrival_add_next_nodes, check_arrival_expand_ecl,
1182         check_arrival_expand_ecl_sub, expand_bkref_cache):
1183         Rename the FL_OPEN parameter to TYPE, which is either
1184         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
1185
1186 2003-12-12  Andreas Jaeger  <aj@suse.de>
1187
1188         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
1189         to syscall.
1190
1191 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
1192
1193         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
1194         There might always be processes which have no vDSO.
1195         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
1196         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
1197
1198 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
1199
1200         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
1201         in the right order.
1202
1203 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
1204
1205         * rt/tst-clock.c (do_test): Print message when skipping
1206         CLOCK_PROCESS_CPUTIME_ID test.
1207
1208         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
1209         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
1210
1211 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
1212
1213         * sysdeps/ia64/elf/initfini.c: Add unwind info.
1214
1215         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
1216         attribute "unused".
1217         (elf_machine_dynamic): Mark with attributes "unused" and "const".
1218         (elf_machine_runtime_setup): Likewise.
1219
1220         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
1221         attribute "always_inline".
1222         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
1223         Likewise.
1224
1225         * configure.in: Check whether compiler has libunwind support.
1226         * config.make.in (have-cc-with-libunwind): New variable.
1227         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
1228         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
1229         mention -lunwind.
1230
1231 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1232
1233         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
1234         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
1235         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
1236         DO_INLINE_SYSCALL.
1237
1238         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
1239         instead of DO_CALL().
1240
1241         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
1242         of DO_CALL().
1243
1244         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
1245         to take advantage of DO_CALL() macro.
1246         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
1247         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
1248
1249         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
1250         program header.  On ia64, the check failed previously because
1251         there are two program headers.
1252
1253 2003-12-10  Andreas Jaeger  <aj@suse.de>
1254             Ruediger Oertel  <ro@suse.de>
1255
1256         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
1257
1258 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
1259
1260         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
1261         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
1262         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
1263         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
1264         * sysdeps/generic/s_nexttowardf.c: Likewise.
1265         * math/Makefile (tests): Add bug-nexttoward.
1266         * math/bug-nexttoward.c: New file.
1267
1268         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
1269         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
1270         * math/bug-nextafter.c (main): Add tests for overflow and negative
1271         values.
1272
1273 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
1274
1275         * math/Makefile (tests): Add bug-nextafter.
1276         * math/bug-nextafter.c: New file.
1277         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
1278         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
1279         * math/libm-test.inc (nextafter_test): Add test for overflow after
1280         +/-FLT_MAX etc.
1281
1282 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
1283
1284         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
1285         of fenv.
1286         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
1287
1288 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1289
1290         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
1291         statements.
1292         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
1293         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
1294         (END): Add cfi_endproc directive.
1295         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
1296         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
1297         cfi_startproc and cfi_endproc directive.
1298         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
1299         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
1300         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
1301         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
1302         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1303         Likewise.
1304         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
1305         Likewise.
1306         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
1307         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
1308         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
1309         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
1310         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
1311         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
1312         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
1313         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
1314         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
1315         Likewise.
1316         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
1317         Likewise.
1318         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
1319         directives. Move thread_start out of ENTRY/PSEUDO_END block to
1320         make backchain terminate.
1321         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
1322
1323         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
1324         (unwind_backtrace, unwind_getip): New variables.
1325         (init, __backchain_backtrace, backtrace_helper): New functions.
1326         (__backtrace): Use unwind info for backtrace instead of backchain
1327         walking if the unwind functions can be found.
1328         * sysdeps/s390/s390-64/backtrace.c: Likewise.
1329
1330         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
1331
1332         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
1333         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
1334         (elf_prstatus32, elf_prpsinfo32): New structures.
1335         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
1336
1337         * scripts/data/c++-types-s390-linux-gnu.data: New file.
1338         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
1339
1340 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
1341
1342         * stdlib/strfmon.c: Correct formatting of international currency
1343         values.  The international currency formatting should prefer the
1344         int_* values if they are set for a locale, and use the domestic
1345         values if the int_* values are unset.
1346
1347 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
1348
1349         * posix/Makefile (distribute): Add BOOST.tests.
1350         (tests): Add tst-boost, depend on tst-boost-mem.
1351         (generated): Add tst-boost-mem and tst-boost.mtrace.
1352         (tst-boost-ARGS, tst-boost-ENV): Set.
1353         ($(objpfx)tst-boost-mem): New.
1354         * posix/tst-boost.c: New test.
1355         * posix/BOOST.tests: New file.
1356
1357         * posix/Makefile (distribute): Add PCRE.tests.
1358         (tests): Add tst-pcre, depend on tst-pcre-mem.
1359         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
1360         (tst-pcre-ARGS, tst-pcre-ENV): Set.
1361         ($(objpfx)tst-pcre-mem): New.
1362         * posix/tst-pcre.c: New test.
1363         * posix/PCRE.tests: New file.
1364
1365 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
1366
1367         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
1368
1369         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
1370         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
1371
1372 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
1373
1374         * locale/programs/locarchive.c (enlarge_archive): Print size info
1375         only in verbose mode.
1376
1377         * locale/iso-3166.def: Three letter code of Romania changed.
1378
1379 2003-12-02  Roland McGrath  <roland@redhat.com>
1380
1381         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
1382         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
1383
1384 2003-11-30  Andreas Jaeger  <aj@suse.de>
1385
1386         * config.make.in (fno-unit-at-a-time): Define.
1387
1388         * configure.in: Add test for -fno-unit-at-a-time.
1389         Fix text for -fpie.
1390
1391         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
1392         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
1393
1394 2003-12-01  Automatic
1395
1396         * version.h (VERSION): Bump to 2.3.3.
1397
1398 2003-11-30  Andreas Jaeger  <aj@suse.de>
1399
1400         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
1401         decrease stack usage.
1402
1403 2003-11-30  Andreas Schwab  <schwab@suse.de>
1404
1405         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
1406         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
1407
1408 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
1409
1410         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
1411         recognize \134 as well.
1412
1413 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
1414
1415         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
1416
1417 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1418
1419         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
1420         <asm/fpu.h>.
1421         (struct ia64_fpreg): New definition.
1422
1423         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
1424         <asm/elf.h>.
1425         (ELF_NGREG): New #define.
1426         (ELF_NFPREG): Likewise.
1427         (elf_greg_t): New type.
1428         (elf_gregset_t): Likewise.
1429         (elf_fpreg_t): Likewise.
1430         (elf_fpregset_t): Likewise.
1431
1432 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
1433
1434         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
1435         <sys/ucontext.h>.
1436         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
1437         (pt_all_user_regs): New type.
1438
1439 2003-10-10  Simon Josefsson  <jas@extundo.com>
1440
1441         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
1442         strchrnul.h, strndup.h (from gnulib).
1443         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
1444         Autoconf manual.
1445         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
1446         Autoconf manual version.
1447         * argp/argp.h: Map __restrict to restrict or empty string when
1448         necessary, copied verbatim from posix/regex.h.
1449
1450 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
1451
1452         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
1453         addition to c++-types-$(base-machine)-$(config-os).data.
1454         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
1455         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
1456
1457 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
1458
1459         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
1460         of newline.
1461         * manual/sysinfo.texi (mtab): Adjust description accordingly.
1462         Reported by Andries.Brouwer@cwi.nl.
1463
1464         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
1465         to compensate other setup.
1466
1467 2003-11-27  Andreas Jaeger  <aj@suse.de>
1468
1469         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
1470
1471         * math/libm-test.inc (atan2_test): Add test that run infinitly.
1472         Reported by "Willus" <etc231etc231@willus.com>.
1473
1474 2003-11-27  Michael Matz  <matz@suse.de>
1475
1476         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
1477         with wrong types.
1478
1479 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
1480
1481         * posix/regexec.c (acquire_init_state_context): Make inline.
1482         Add always_inline attribute.
1483         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
1484         into if (dfa->nbackref).
1485         (sift_states_backward): Fix comment.
1486         (transit_state): Add BE macro.  Move if (next_state->has_backref)
1487         into if (dfa->nbackref && next_state).  Don't check for next_state
1488         != NULL twice.
1489         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
1490         for ANCHOR.
1491         (parse_expression): Only call init_word_char if word context will be
1492         needed.
1493
1494         * posix/bug-regex11.c (tests): Add new tests.
1495
1496         * posix/tst-regex.c: Include getopt.h.
1497         (timing): New variable.
1498         (main): Set timing to 1 if --timing argument is present.
1499         Add 2 new tests.
1500         (run_test, run_test_backwards): Handle timing.
1501
1502 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
1503
1504         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
1505         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
1506         offsets_needed fields.  Change icase, is_utf8 and map_notascii
1507         type from int bitfield to unsigned char.
1508         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
1509         (build_wcs_upper_buffer): Change prototype to return int.
1510         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
1511         defines, add prototypes.
1512         * posix/regex_internal.c (re_string_allocate): Don't initialize
1513         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
1514         Use mbs_allocated instead of MBS_* macros.
1515         (re_string_construct): Don't initialize stop and valid_len here.
1516         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
1517         macros.  Reallocate buffers if build_wcs_upper_buffer converted
1518         too few bytes.  Set valid_len to bufs_len only for single byte
1519         no translation and set in that case valid_raw_len as well.
1520         (re_string_realloc_buffers): Reallocate offsets if not NULL.
1521         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
1522         mbs_case.
1523         (re_string_construct_common): Initialize raw_len, mbs_allocated,
1524         stop and raw_stop.
1525         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
1526         after it.  Set valid_raw_len.  Don't set mbs_case.
1527         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
1528         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
1529         before mbrtowc instead of after it.  If upper case character
1530         uses different number of bytes than lower case, goto to the
1531         slow path.  Don't call towupper unnecessarily twice.  Set
1532         valid_raw_len as well.  Handle in the slow path the case if
1533         lower and upper case use different number of characters.
1534         Don't set mbs_case.
1535         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
1536         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
1537         valid_raw_len.
1538         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
1539         valid_raw_len.
1540         (re_string_reconstruct): Use raw_len/raw_stop to initialize
1541         len/stop.  Clear valid_raw_len and offsets_needed when clearing
1542         valid_len.  Use mbs_allocated instead of MBS_* macros.
1543         Check original offset against valid_raw_len instead of valid_len.
1544         Remove mbs_case handling.  Adjust valid_raw_len together with
1545         valid_len.  If is_utf8 and looking for tip context, apply
1546         pstr->trans first.  If buffers start with partial multi-byte
1547         character, initialize mbs array as well if mbs_allocated.
1548         Check return value of build_wcs_upper_buffer.
1549         (re_string_peek_byte_case): New function.
1550         (re_string_fetch_byte_case): New function.
1551         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
1552         Don't free mbs_case.  Free offsets.
1553         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
1554         if mb_cur_max == 6.
1555         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
1556         as well.  Use valid_raw_len instead of valid_len when looking
1557         through fastmap.  Adjust registers through input.offsets.
1558         (extend_buffers): Allow build_wcs_upper_buffer to fail.
1559         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
1560         tests.
1561
1562 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
1563
1564         * posix/regexec.c (check_subexp_limits): Only check close
1565         subexpression limitation if one is found.  Formatting.
1566         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
1567         Formatting.
1568         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
1569         Add new test.
1570
1571 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
1572
1573         * sysdeps/unix/sysv/linux/kernel-features.h
1574         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
1575         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
1576         if __ASSUME_PROT_GROWSUPDOWN is defined.
1577
1578 2003-11-26  Andreas Jaeger  <aj@suse.de>
1579
1580         * sysdeps/unix/sysv/linux/dl-execstack.c
1581         (_dl_make_stack_executable): Set dl_stack_flags always for
1582         success.
1583
1584 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
1585
1586         * locale/program/ld-monetary.c: Only check the first three
1587         characters in int_curr_symbol against ISO-4217, to make the
1588         separator character used by a locale independent of the content
1589         in iso-4217.def.
1590         * locale/iso-4217.def: Remove the space character from all
1591         currency values to get the new test code in ld-monetary.c working.
1592
1593 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
1594
1595         * elf/soinit.c (_fini): Put _fini() in .init_array section if
1596         HAVE_INITFINI_ARRAY is defined.
1597
1598 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1599
1600         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
1601         Define it appropriately after last change.  Use it where __sqrtl
1602         was used.
1603
1604 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
1605
1606         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
1607         sqrt for gcc 3.3 and above.
1608
1609 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
1610
1611         * posix/runptests.c (main): Make errors fatal.
1612         * posix/PTESTS: One test in GA135 and GA136 check functionality
1613         which seems not guaranteed.
1614
1615 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
1616
1617         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
1618         returned REG_NOMATCH, set match_last to -1.  Don't initialize
1619         pmatch[0] needlessly.  Fix comment.
1620         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
1621         (set_regs): Fix comment.
1622         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
1623         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
1624         (build_charclass_op): Set has_plural_match if adding both
1625         SIMPLE_BRACKET and COMPLEX_BRACKET.
1626         * posix/bug-regex11.c (tests): Fix register values for one commented
1627         out test.  Add new tests.
1628
1629         * posix/regex_internal.c (re_string_allocate): Make sure init_len
1630         is at least dfa->mb_cur_max.
1631         (re_string_reconstruct): If is_utf8, don't fall back into
1632         re_string_skip_chars just because idx points into a middle of
1633         valid UTF-8 character.  Instead, set the wcs bytes which correspond
1634         to the partial character bytes to WEOF.
1635         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
1636         instead of dfa->nodes_len + 1 state_log entries initially.
1637         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
1638         tests.
1639
1640 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
1641
1642         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
1643         comment.
1644         (re_dfa_t): Add sb_char field.
1645         (bitset_mask): New function.
1646         * posix/regcomp.c (free_dfa_content): Free sb_char.
1647         (init_dfa): Don't initialize word_char unnecessarily.
1648         Initialize sb_char.
1649         (duplicate_node): Don't duplicate !word_char CHARACTERs with
1650         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
1651         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
1652         (duplicate_node_closure): Handle clone_dest == -1 from
1653         duplicate_node.
1654         (peek_token): Initialize word_char bit.
1655         (parse_expression, parse_dup_op): Add comments.
1656         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
1657         starting bytes here at the beginning.  Mask off the bits right
1658         before creating SIMPLE_BRACKET.
1659         (build_charclass_op): Likewise.
1660         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
1661         set accept bits for single-byte characters.
1662         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
1663         being single byte encoded and the rest multi-byte.
1664         * posix/bug-regex19.c (tests): Add new tests.
1665         (do_mb_tests): Initialize t to *test.
1666         (main): Fail even on do_mb_tests errors.
1667
1668 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
1669
1670         * posix/regexec.c: Correct several memory allocation problems.
1671         Add more BE.
1672         * posix/regex_internal.c: Likewise.
1673         * posix/regcomp.c: Likewise.
1674
1675         * posix/regexec.c: Add const in a number of places.
1676         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
1677         debugging.  Its value isn't important.
1678
1679 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
1680
1681         * posix/PTESTS: Fix first test of GA143.
1682
1683 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1684
1685         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
1686         isn't likely.
1687
1688         * locale/programs/charmap.c (charmap_read): If encoding is found
1689         not ASCII compatible, set enc_not_ascii_compatible.
1690         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
1691         * locale/programs/ld-ctype.c (ctype_startup): If
1692         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
1693
1694 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
1695
1696         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
1697         if !__libc_enable_secure.
1698
1699         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
1700         field.
1701         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
1702         (dl_main): Set GL(dl_use_load_bias) default.
1703         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
1704         Add EXTRA_LD_ENVVARS_13.
1705         * elf/dl-support.c (_dl_use_load_bias): New variable.
1706         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
1707         with GL(dl_use_load_bias).
1708         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
1709         LD_USE_LOAD_BIAS.
1710         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
1711         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
1712         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
1713         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
1714         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
1715
1716 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
1717
1718         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
1719
1720         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
1721         pointer.  Adjust callers.
1722
1723         * posix/regcomp.c (fetch_token): Change interface to match
1724         peek_token.  This avoids some copying and reduces code size.
1725
1726 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
1727
1728         * posix/bug-regex19.c (tests): Add more tests.
1729
1730         * posix/bug-regex11.c: And one more commented out test.
1731
1732         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
1733         tests multiple times unnecessarily.
1734
1735         * posix/bug-regex19.c (BRE, ERE): Define.
1736         (tests): Add many new tests, remove UTF-8 ones.
1737         (do_one_test, do_mb_tests): New functions.
1738         (main): Rewritten using do_one_test and do_mb_tests.
1739
1740 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
1741
1742         * posix/PTESTS: Fix first test in GA143.
1743
1744 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
1745
1746         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
1747         Add word_trtable.
1748         * posix/regex_internal.c (create_newstate_common, free_state):
1749         Don't free trtable_search.
1750         * posix/regexec.c (check_matching): Remove fl_search argument.
1751         (transit_state_sb): Likewise.  #ifdef out as unused.
1752         (build_trtable): Remove fl_search argument.  Set state->word_trtable
1753         and state->trtable.  Build separate word and non-word tables if
1754         multi-byte and they differ for some character.
1755         (transit_state): Remove fl_search argument.  Don't update
1756         state->trtable here.  Handle state->word_trtable.
1757         #ifdef out unused call to transit_state_sb.
1758         (re_search_internal): Update check_matching caller.
1759         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
1760         bitmask for multi-byte locales.
1761         * posix/bug-regex19.c (tests): Enable some commented out tests, add
1762         2 new tests.
1763         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
1764         multi-byte.  Don't run identical multi-byte tests multiple times
1765         unnecessarily.
1766         (main): Check setlocale return value.
1767         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
1768         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
1769         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
1770         here, without --utf8 argument but with MALLOC_TRACE.
1771
1772 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
1773
1774         * posix/regexec.c (extend_buffers): Don't allocate
1775         twice as big state_log as needed.  Don't modify pstr->valid_len
1776         for mb_cur_max == 1 !icase !trans.
1777
1778         * posix/regcomp.c (free_bin_tree): Removed.
1779         (create_tree): Add dfa argument.  Don't call re_malloc for
1780         each tree, instead allocate from str_tree_storage.
1781         (re_dfa_add_tree_node): New function.
1782         (free_dfa_content): Handle freeing if dfa->nodes == NULL
1783         or dfa->state_table == NULL.
1784         (re_compile_internal): Call free_dfa_content if init_dfa
1785         fails.  Call free_workarea_compile, re_string_destruct
1786         and free_dfa_content for most of the other failure paths.
1787         (init_dfa): Initialize str_tree_storage_idx.
1788         Don't clear any fields on allocation failure.
1789         (free_workarea_compile): Free str_tree_storage chunks
1790         instead of free_bin_tree (dfa->str_tree).
1791         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
1792         followed by create_tree.  Add dfa argument to remaining
1793         create_tree calls.  Remove new_idx variable.  Remove calls
1794         to free_bin_tree.
1795         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
1796         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
1797         (duplicate_tree): Remove calls to free_bin_tree, add dfa
1798         argument to create_tree.
1799         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
1800         (bin_tree_storage_t): New type.
1801         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
1802         fields.
1803         * posix/Makefile (tests): Add bug-regex21.
1804         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
1805         tst-rxspencer-mem and tst-rxspencer.mtrace.
1806         (tests): Depend on $(objpfx)bug-regex21-mem
1807         and $(objpfx)tst-rxspencer-mem.
1808         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
1809         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
1810         * posix/tst-rxspencer.c (main): Add call to mtrace.
1811         Free line at the end.
1812         * posix/bug-regex21.c: New test.
1813
1814 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
1815
1816         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
1817
1818         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
1819         fails, just use the byte, do no fancy conversions.
1820
1821         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
1822         not ->len.
1823         (re_string_is_single_byte_char): Likewise.
1824
1825 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
1826
1827         * posix/regexec.c (get_subexp): After calling get_subexp_sub
1828         reload buf and bkref_str.  Little optimization by avoiding memcmp.
1829
1830 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
1831
1832         * sysdeps/unix/sysv/linux/ia64/sysdep.h
1833         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
1834         that all existing GAS versions have a problem with .align inside
1835         a function.
1836         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
1837         * sysdeps/ia64/memcpy.S: Likewise.
1838         * sysdeps/ia64/memset.S: Likewise.
1839         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
1840         out of .text into .rodata, where it belongs.
1841
1842         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
1843         save/restore input-arguments, because they're necessarily
1844         preserved by the kernel to support syscall-restart.
1845
1846 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1847
1848         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
1849         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
1850         and EPSILON_BIT.
1851         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
1852         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
1853         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
1854         Handle OP_UTF8_PERIOD.
1855         (re_string_reconstruct): Set valid_len for single byte char searching
1856         with no translation and case sensitivity.
1857         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
1858         OP_UTF8_PERIOD.
1859         (re_compile_internal): Don't call optimize_utf8 if preg->translate
1860         != NULL.
1861         (optimize_utf8): Remove BACK_SLASH case.
1862         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
1863         optimized.
1864         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
1865         any bits set and COMPLEX_BRACKET is used.
1866         * posix/regexec.c (transit_state_mb): Fix comment typo.
1867         (group_nodes_into_DFAstates, check_node_accept): Handle
1868         OP_UTF8_PERIOD.
1869         (check_node_accept_bytes): Likewise.  Reorder slightly so that
1870         re_string_char_size_at and re_string_elem_size_at are called
1871         only when needed.
1872         * posix/bug-regex20.c (BRE, ERE): Define.
1873         (tests): Use them to make lines shorter.  Expect . to be
1874         optimized.  Add lots of new tests.
1875         (main): Run (ATM just case sensitive) test with backwards searching
1876         as well.
1877
1878 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
1879
1880         * io/bug-ftw4.c: Include string.h.
1881         * posix/fnmatch.c (mbsinit): Remove define.
1882
1883 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
1884
1885         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
1886         well.
1887         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
1888         followed by dup operator is expected to be optimized.
1889
1890         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
1891         variables to the block where they are only used, initialize
1892         nrules only immediately before using it.
1893
1894 2003-11-15  Andreas Jaeger  <aj@suse.de>
1895
1896         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
1897         * sysdeps/x86_64/fpu/s_truncl.S: New file.
1898         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
1899         * sysdeps/x86_64/fpu/s_floorl.S: New file.
1900         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
1901         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
1902
1903         * math/libm-test.inc (floor_test): Test also Â±0.25.
1904         (ceil_test): Test -0.25.
1905
1906 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
1907
1908         * sysdeps/posix/getaddrinfo.c: Add support for destination address
1909         selection according to RFC 3484.
1910
1911 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
1912
1913         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
1914         Replace last two parameters of re_string_allocate and
1915         re_string_construct with pointer to DFA.
1916         (re_dfa_t): Add map_notascii field.
1917         * posix/regcomp.c (re_compile_internal): Add call of
1918         re_string_construct.
1919         (init_dfa): Initialize map_notascii.
1920         * posix/regex_internal.c: Adjust definitions of re_string_allocate
1921         and re_string_construct.
1922         Pass DFA to re_string_construct.  Adjust definition.  Initialize
1923         map_notascii field.
1924         (build_wcs_upper_buffer): If map_notascii is zero use simplified
1925         method to map ASCII values to upper case.
1926         * posix/regex.c: Include localeinfo.h.
1927         * posix/regexec.c: Adjust call of re_string_allocate.
1928
1929         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
1930         * locale/localeinfo.h (LIMAGIC): Change value.
1931         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
1932         * locale/C-ctype.h: Likewise.
1933         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
1934         ASCII to non-ASCII value.  Write out that value.
1935
1936         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
1937         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
1938
1939 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
1940
1941         * posix/tst-rxspencer.c (check_match): @ without any following
1942         characters must match only end of string.
1943         (main): Fix filename in error message.
1944
1945 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
1946
1947         * sysdeps/ia64/dl-machine.h: Force inlining of
1948         elf_machine_runtime_setup().
1949
1950 2003-11-13  Andreas Jaeger  <aj@suse.de>
1951
1952         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
1953         (CFLAGS-test-double.c): Likewise.
1954         (CFLAGS-test-ldouble.c): Likewise.
1955         (CPPFLAGS-test-ifloat.c): Likewise.
1956         (CPPFLAGS-test-idouble.c): Likewise.
1957         (CPPFLAGS-test-ildoubl.c): Likewise.
1958
1959         * math/libm-test.inc (ceil_test): Test ceil (0.25).
1960
1961 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
1962
1963         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
1964         sends the netlink data.
1965         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
1966
1967 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
1968
1969         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
1970         with no bits set for >= 0x80 chars is seen.
1971         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
1972         optimized.
1973         (main): Run all tests with RE_ICASE as well.
1974
1975 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
1976
1977         * posix/Makefile: Add rules to build and run tst-rxspencer.
1978         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
1979         * posix/tst-rxspencer.c: New file.
1980         * posix/rxspencer/tests: New file.
1981         * posix/rxspencer/COPYRIGHT: New file.
1982         Patch mostly by Jakub Jelinek.
1983
1984         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
1985         this is no option given the first token.
1986
1987         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
1988         hyphen in range expression.  Return EBRACK in this case.
1989
1990         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
1991         we expect them or it's the last element in the bracket expression.
1992         Indicated by new parameter.  Adjust all callers.
1993
1994         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
1995         Prettier error messages.
1996
1997         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
1998         number in {,} expression is larger.
1999
2000 2003-11-13  Andreas Jaeger  <aj@suse.de>
2001
2002         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
2003         Define appropriately for x86_64.
2004         (__ASSUME_UTIMES): Likewise.
2005         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
2006
2007         * sysdeps/x86_64/fpu/s_ceill.S: New file.
2008
2009 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
2010
2011         * posix/regcomp.c (parse_expression): In BRE consecutive
2012         duplications are not allowed.
2013
2014 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
2015
2016         * posix/regcomp.c (parse_bracket_exp): If end of expression is
2017         seen, return EBRACK error, not BADPAT.
2018
2019         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
2020         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
2021         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
2022         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
2023
2024         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
2025         return REG_EPAREN.
2026
2027         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
2028         * posix/runptests.c (main): Handle comments.
2029         * posix/PTESTS2C.sed: Handle comments.
2030
2031 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2032
2033         * posix/regcomp.c (optimize_utf8): New function.
2034         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
2035         of !icase.
2036         (re_compile_internal): Call optimize_utf8 if not case insensitive
2037         and in UTF-8 locale.
2038         * posix/regex_internal.h: Ifdef out some prototypes if
2039         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
2040         * posix/Makefile (tests): Add bug-regex20.
2041         (bug-regex20-ENV): Add LOCPATH.
2042         * posix/bug-regex20.c: New test.
2043
2044 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2045
2046         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
2047
2048 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2049
2050         * posix/tst-regex.c (umemlen): New variable.
2051         (test_expr): Add expectedicase argument.  Test case insensitive
2052         searches as well as backwards searches (case sensitive and
2053         insensitive) too.
2054         (run_test): Add icase argument.  Use it to compute regcomp flags.
2055         (run_test_backwards): New function.
2056         (main): Cast read to size_t to avoid warning.  Set umemlen.
2057         Add expectedicase arguments to test_expr.
2058         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
2059         find previous character by walking back instead of converting
2060         all chars from beginning.
2061
2062 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2063
2064         * posix/regex_internal.h (struct re_string_t): Add is_utf8
2065         and mb_cur_max fields.
2066         (struct re_dfa_t): Likewise.  Reorder fields to make structure
2067         smaller on 64-bit arches.
2068         (re_string_allocate, re_string_construct): Add mb_cur_max and
2069         is_utf8 arguments.
2070         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
2071         instead of MB_CUR_MAX.
2072         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
2073         instead of MB_CUR_MAX.
2074         (re_compile_internal): Pass new arguments to re_string_construct.
2075         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
2076         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
2077         of MB_CUR_MAX.
2078         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
2079         dfa->mb_cur_max instead of MB_CUR_MAX.
2080         * posix/regex_internal.c (re_string_construct_common): Add
2081         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
2082         (re_string_allocate, re_string_construct): Add mb_cur_max and
2083         is_utf8 arguments, pass them to re_string_construct_common.
2084         Use mb_cur_max instead of MB_CUR_MAX.
2085         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
2086         MB_CUR_MAX.
2087         (re_string_reconstruct): Likewise.
2088         (re_string_context_at): Use input->mb_cur_max instead of
2089         MB_CUR_MAX.
2090         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
2091         instead of MB_CUR_MAX.
2092         * posix/regexec.c (re_search_internal): Likewise.
2093         Pass new arguments to re_string_allocate.
2094         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
2095         MB_CUR_MAX.
2096         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
2097
2098 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
2099
2100         * posix/Makefile (tests): Add bug-regex19.
2101         (bug-regex19-ENV): Add LOCPATH.
2102         * posix/bug-regex19.c: New test.
2103
2104 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2105
2106         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
2107         with MB_CUR_MAX > 1 locales in the fastmap.
2108
2109 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
2110
2111         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
2112         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
2113         of toupper.
2114         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
2115         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
2116         * posix/bug-regex17.c: New file
2117         * posix/bug-regex18.c: New file.
2118
2119 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
2120
2121         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
2122         Define __NR_pread/__NR_pwrite if not done in kernel headers
2123
2124 2003-11-11  Roland McGrath  <roland@redhat.com>
2125
2126         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
2127
2128         * manual/Makefile (info): Don't depend on dir-add.info.
2129         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
2130         (dir-add.info): Target removed, replaced with ...
2131         (dir-add.texi): New target.
2132         (distribute): Add it.
2133         (install): Remove variant with --section arguments.
2134         Let the @dircategory directives do their work.
2135         (mostlyclean): Don't remove dir-add.info here.
2136         (realclean): Remove dir-add.texi here.
2137         * manual/libc.texinfo: @include dir-add.texi
2138         * configure.in: Remove check for old Debian install-info.
2139         * configure: Regenerated.
2140         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
2141
2142 2003-11-08  Andreas Schwab  <schwab@suse.de>
2143
2144         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
2145
2146 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2147
2148         * io/ftwtest-sh: Fix nested sed commands.
2149
2150 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
2151
2152         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
2153         valid_len wide chars.
2154
2155 2003-11-09  Roland McGrath  <roland@redhat.com>
2156
2157         * manual/examples/dir2.c (one): Add const to argument type.
2158         Reported by J de Haan <j.de.haan@home.nl>.
2159
2160 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
2161
2162         * po/pl.po: Update from translation team.
2163
2164 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
2165
2166         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2167         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
2168         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
2169         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
2170         and compat_symbol.
2171         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
2172         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
2173         and nftw64@@GLIBC_2.3.3.
2174
2175         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
2176         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
2177         * io/ftw.c (ftw_dir): Add old_dir argument.
2178         Clear result if it was FTW_SKIP_SIBLINGS after processing all
2179         dir entries.  Change cwd back if old_dir != NULL.
2180         (process_entry): Adjust caller.  Don't change cwd back here.
2181         Change FTW_SKIP_SUBTREE result to 0.
2182         (ftw_startup): Adjust ftw_dir caller.
2183         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
2184         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
2185         (options, main): Add --skip-subtree and --skip-siblings options.
2186         (cb): Use return FTW_CONTINUE instead of return 0.
2187         Handle --skip-subtree and --skip-siblings.
2188         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
2189         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
2190
2191 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
2192
2193         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
2194         non-zero.
2195         * io/Makefile (tests): Add bug-ftw4.
2196         * io/bug-ftw4.c: New test.
2197
2198 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
2199
2200         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
2201         (struct _IO_FILE_complete_plus): New type.
2202         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
2203         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
2204         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
2205         Call _IO_old_init instead of _IO_init.
2206
2207 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
2208
2209         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
2210
2211         * locale/iso-639.def: Add Blin.
2212         Patch by Daniel Yacob <locales@geez.org>.
2213
2214 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
2215
2216         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
2217         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
2218
2219 2003-11-01  Randolph Chung  <tausq@debian.org>
2220
2221         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
2222         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
2223         Add missing parentheses.
2224
2225 2003-11-01  Roland McGrath  <roland@redhat.com>
2226
2227         * libio/bug-ftell.c (do_test): Add a cast.
2228
2229 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
2230
2231         * Makerules (shlib.lds): Make sure that ld doesn't try to link
2232         anything while generating the linker script.
2233
2234 2003-10-31  Roland McGrath  <roland@redhat.com>
2235
2236         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
2237         special members.
2238
2239 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
2240
2241         * po/be.po: Update from translation team.
2242
2243 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
2244
2245         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
2246         _dl_map_object.
2247
2248         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
2249         ELF header.
2250
2251         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
2252         rest of line.  We use getline which means this cannot happen.
2253
2254 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
2255
2256         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
2257         Avoid infinite loops in case the mounts file is hosed.
2258         * io/Makefile: Add rules to build and run tst-statvfs.
2259         * io/tst-statvfs.c: New file.
2260
2261         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
2262         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
2263         executables unless __RTLD_OPENEXEC flag is present.
2264         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
2265         _dl_map_object when loading the executable.
2266
2267         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
2268         correctly.
2269         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
2270
2271         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
2272         reverse lookup format for IPv6 addresses is using bitstring and
2273         .ip6.arpa suffix.
2274         * resolv/ns_name.c: Implement encoding and decoding bitstring in
2275         hex format.
2276
2277 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
2278
2279         * locale/programs/locale.c (show_info): Fix printing word values on
2280         64-bit big-endian architectures.
2281
2282 2003-10-19  Bruno Haible  <bruno@clisp.org>
2283
2284         * intl/hash-string.c (hash_string): Zero-extend each char from the
2285         string; the old code did a sign-extend on some platforms.
2286
2287 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
2288
2289         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
2290         append options to these.
2291         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
2292
2293 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
2294
2295         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
2296
2297 2003-10-15  Roland McGrath  <roland@redhat.com>
2298
2299         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
2300         Fake an entry for the main executable and then call __dl_iterate_phdr.
2301         * elf/Makefile (routines): Remove dl-iteratephdr-static.
2302         (elide-routines.os): Likewise.
2303         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
2304         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
2305         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
2306
2307 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
2308
2309         * elf/rtld.c (print_statistics): Print also number of relative
2310         relocations.
2311
2312 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
2313
2314         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
2315         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
2316         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
2317         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
2318         and undef JUMPTARGET before use.
2319         [PIC]: Save pic register around syscall.
2320         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
2321         Cleanup asm statment.
2322
2323 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2324
2325         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
2326         after trapa instruction.
2327
2328 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2329
2330         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
2331
2332 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
2333
2334         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
2335
2336 2003-10-09  Roland McGrath  <roland@redhat.com>
2337
2338         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
2339         is no file to name.
2340
2341 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
2342
2343         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
2344         two identical copies of strings.
2345
2346 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2347
2348         * posix/bug-regex11.c: Add some more tests which fail so far.
2349         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
2350
2351 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
2352
2353         * posix/bug-regex11.c: Add more backreference-related test cases.
2354         (main): Show the failing regex in the error messages.
2355         * posix/regexec.c (check_dst_limits_calc_pos):
2356         Simplify some nested conditionals.  Replace if's with a switch
2357         statement.
2358         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
2359         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
2360         does not change in the recursive invocation, fixing an infinite loop
2361         in the ()\1*\1* regex.
2362         (sift_states_backward): Fix function comment.
2363         * posix/regcomp.c (calc_epsdest): Add an assertion.
2364
2365 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
2366
2367         * manual/examples/testopt.c: Fix warnings.  Better error message
2368         for missing -c argument.
2369         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
2370
2371         * timezone/asia: Update from tzdata2003d.
2372         * timezone/australasia: Likewise.
2373         * timezone/backward: Likewise.
2374         * timezone/europe: Likewise.
2375         * timezone/iso3166.tab: Likewise.
2376         * timezone/northamerica: Likewise.
2377         * timezone/southamerica: Likewise.
2378         * timezone/zone.tab: Likewise.
2379
2380 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
2381
2382         * sysdeps/ia64/backtrace.c: New file.
2383         * sysdeps/x86_64/backtrace.c: New file.
2384         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
2385         (_Unwind_Backtrace): New prototype.
2386
2387 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
2388
2389         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
2390         * sysdeps/i386/elf/setjmp.S: Likewise.
2391
2392 2003-10-02  Roland McGrath  <roland@redhat.com>
2393
2394         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
2395         * argp/argp-namefrob.h
2396         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
2397         (__argp_short_program_name): Don't declare fn, define it as a macro.
2398
2399 2003-08-22  Simon Josefsson  <jas@extundo.com>
2400
2401         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
2402
2403         * argp/argp-help.c: Don't include malloc.h, some platforms
2404         complain and it doesn't appear to be used.
2405         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
2406         strerror_r.
2407         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
2408         strerror.
2409         (hol_entry_long_iterate): Change __attribute to __attribute__.
2410         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
2411         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
2412         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
2413         modified after comments from Ulrich Drepper.
2414         (__argp_short_program_name): Ditto.
2415         (__argp_state_help, __argp_error, __argp_failure): Use it.
2416         (__argp_failure): Use strerror when necessary.
2417
2418         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
2419         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
2420         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
2421         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
2422         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
2423         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
2424         non-unlocked functions.
2425         [!_LIBC]: Add prototypes for __argp_basename and
2426         __argp_short_program_name.
2427
2428         * argp/argp-parse.c (argp_default_parser): Only use
2429         program_invocation{_short,}_name if declared.
2430         (parser_init): Use __argp_short_program_name.
2431
2432         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
2433         '#include features.h'.
2434
2435         * argp/argp.h [!__attribute__]: Define to nothing.
2436
2437 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
2438
2439         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
2440         for the first token in a subexpression as well.
2441
2442 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
2443
2444         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
2445         handling again.
2446         (parse_reg_exp): Likewise.
2447         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
2448
2449         * posix/bug-regex11.c (tests): Add new tests.
2450         * posix/bug-regex12.c (tests): Add new test.
2451
2452 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
2453
2454         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2455         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
2456
2457 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
2458
2459         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
2460         the old thread-m.h header too.
2461
2462 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
2463
2464         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
2465         back to 131027 since this is what the kernel enforces.
2466
2467         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
2468         define it with libc_freeres_ptr.
2469
2470 2003-10-01  Roland McGrath  <roland@redhat.com>
2471
2472         * elf/rtld.c (dl_main): Add cast in last change.
2473
2474 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
2475
2476         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
2477         "#if 0" surrounding most of contents.
2478         (SYSCALL_ERROR_LABEL): Define.
2479         (__SYSCALL_CLOBBERS): Add $10.
2480         (internal_syscall7): Remove.
2481         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
2482
2483 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
2484
2485         * elf/rtld.c (dl_main): Also set l_map_start.
2486
2487 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
2488
2489         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
2490         to work around kernel problem.
2491
2492 2003-09-27  Wolfram Gloger  <wg@malloc.de>
2493
2494         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
2495         "thread-m.h", so that default parameters can be overridden in a
2496         system-specific malloc-machine.h.  Remove extra ; from extern "C"
2497         closing brace.
2498         * sysdeps/generic/malloc-machine.h: New file.
2499         * sysdeps/mach/hurd/malloc-machine.h: New file.
2500         * malloc/thread-m.h: Removed.
2501         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
2502         is in sysdeps/generic/malloc-machine.h now.
2503
2504 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
2505
2506         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
2507         variables only used if TLS_TCB_AT_TP is defined into the #if
2508         branch.
2509
2510         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
2511         well to cover using long long in C90.
2512
2513 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
2514
2515         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
2516         Redefine and use __libc_cleanup_region_end instead.
2517
2518 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
2519
2520         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
2521         fix prototypes for picky C++ compilers.
2522
2523 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
2524
2525         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
2526         the device ID is invalid and return -1.
2527         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2528
2529 2003-09-26  Andreas Schwab  <schwab@suse.de>
2530
2531         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
2532         rt_sigprocmask system call.
2533
2534 2003-09-25  Roland McGrath  <roland@redhat.com>
2535
2536         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
2537         Don't check for zero __libc_stack_end, it should be initialized.
2538         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
2539         and fall back if it fails with EINVAL.
2540         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
2541
2542 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2543
2544         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
2545         sysdeps/i386/dl-procinfo.c instead of
2546         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
2547         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
2548         #include_next.
2549
2550 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
2551
2552         * posix/regcomp.c (peek_token): Remove recent changes for anchor
2553         handling again.
2554         (parse_reg_exp): Likewise.
2555         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
2556
2557         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
2558         banners.
2559
2560         * nis/nis_table.c (nis_list): Always strdup string used with
2561         ibreq->ibr_name.  Add several NULL pointer checks.
2562
2563         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
2564         of nis_list.
2565         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
2566         * nis/nss_nisplus/nisplus-grp.c: Likewise.
2567         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
2568         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
2569         * nis/nss_nisplus/nisplus-network.c: Likewise.
2570         * nis/nss_nisplus/nisplus-proto.c: Likewise.
2571         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
2572         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
2573         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
2574         * nis/nss_nisplus/nisplus-service.c: Likewise.
2575         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
2576
2577         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
2578         and PROT_GROWSUP.
2579         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
2580         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
2581         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
2582         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
2583         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
2584         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
2585         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
2586         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
2587         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
2588         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
2589         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
2590
2591 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
2592
2593         * misc/syslog.c: Include locale.h.
2594         (vsyslog): Add date always in C locale %h %e %T format.
2595
2596 2003-09-24  Paul Eggert  <eggert@twinsun.com>
2597
2598         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
2599         size_t overflow when reallocating storage.
2600         * argp/argp-help.c (make_hol, hol_append): Likewise.
2601         (SIZE_MAX): New macro.
2602
2603 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
2604
2605         * sysdeps/mach/hurd/bits/libc-lock.h
2606         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
2607
2608 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
2609
2610         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
2611         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
2612         #include_next dl-procinfo.h to get them.
2613         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
2614         (_DL_PLATFORMS_COUNT): Likewise.
2615         (_DL_FIRST_PLATFORM): Likewise.
2616         (_DL_HWCAP_PLATFORM): Likewise.
2617         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
2618         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
2619         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
2620         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
2621         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
2622         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
2623         HWCAP_IMPORTANT): Likewise.
2624         (_DL_PROCINFO_H_): Likewise.
2625         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
2626         (_dl_string_platform): Likewise.
2627         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
2628         * sysdeps/i386/dl-procinfo.c: ... here, new file.
2629
2630 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2631
2632         * sysdeps/unix/sysv/linux/dl-execstack.c
2633         (_dl_make_stack_executable): Remember that we changed the permission.
2634
2635         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
2636         __libc_stack_end.  Patch by David Mosberger.
2637
2638 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2639
2640         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
2641         __libc_stack_end@GLIBC_PRIVATE.
2642
2643         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
2644         (_dl_sysdep_start): Set __libc_stack_end here.
2645         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
2646         __libc_stack_end.
2647         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
2648         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
2649         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
2650         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
2651         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
2652         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
2653         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
2654         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
2655         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
2656         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
2657         (RTLD_START): Remove setting of __libc_stack_end.
2658         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
2659         (RTLD_START): Remove setting of __libc_stack_end.
2660
2661 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2662
2663         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
2664         function definitions.  Adjust macro expansions accordingly.
2665         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
2666         minor, makedev name.
2667         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
2668
2669 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2670
2671         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
2672         Add __THROW.
2673
2674 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
2675
2676         * nscd/Makefile (others): Add nscd before including ../Rules.
2677
2678 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
2679
2680         * nscd/Makefile: Add rules to build nscd as a PIE.
2681         * configure.in: Check for -fpie and -pie compiler options.
2682         * config.make.in (have-fpie): Define.
2683
2684 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2685
2686         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
2687         kernel dev_t size.
2688         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
2689         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
2690         * sysdeps/unix/sysv/linux/makedev.c: New file.
2691         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
2692         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
2693         (sysdep_routines): Add makedev.
2694         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
2695         major, minor, makedev.
2696         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
2697         kernel dev_t.
2698         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
2699         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
2700         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
2701         Code by Alexander Viro <aviro@redhat.com>.
2702
2703 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2704
2705         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
2706         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
2707         makecontext.
2708         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
2709         for include Altivec support for PPC32.  It was not compatible.
2710         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
2711         offsets for ucontext_t change.
2712         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
2713         for ucontext_t change.  Add compatibility code.
2714         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
2715         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
2716         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
2717         Patch by Paul Mackerras <paulus@samba.org>.
2718
2719 2003-02-25  Randolph Chung  <tausq@debian.org>
2720
2721         * sysdeps/hppa/Makefile: Include compat code in build.
2722         * sysdeps/hppa/libgcc-compat.c: New file.
2723         * sysdeps/hppa/Dist: Add libgcc-compat.c.
2724         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
2725
2726 2003-09-23  Roland McGrath  <roland@redhat.com>
2727
2728         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
2729         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
2730         Move GL(dl_make_stack_executable_hook) initialization up.
2731         * elf/tst-execstack-prog.c: New file.
2732         * elf/Makefile (tests-execstack-yes): Add it.
2733         (LDFLAGS-tst-execstack-prog): New variable.
2734
2735 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
2736
2737         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
2738         before calling _dl_start, using %rip relative access.
2739         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
2740         and _dl_fini.
2741
2742 2003-09-23  Roland McGrath  <roland@redhat.com>
2743
2744         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
2745         calling _dl_start, using GOTOFF access.
2746
2747         * configure.in (libc_cv_z_execstack): New check.
2748         * configure: Regenerated.
2749         * config.make.in (have-z-execstack): New variable set by it.
2750         * elf/tst-execstack.c: New file.
2751         * elf/tst-execstack-mod.c: New file.
2752         * elf/tst-execstack-needed.c: New file.
2753         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
2754         variables.
2755         (tests, modules-names): Conditionally include them.
2756         (distribute): Add tst-execstack-mod.c here.
2757         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
2758         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
2759         ($(objpfx)tst-execstack-needed): New target.
2760         (LDFLAGS-tst-execstack-needed): New variable.
2761
2762         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
2763         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
2764         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
2765         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
2766         Initialize _dl_make_stack_executable_hook.
2767         * elf/dl-support.c: Define those new variables.
2768         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
2769         (_dl_phdr): Fix type.
2770         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
2771         enable execute permission for the stack if necessary.
2772         * sysdeps/generic/dl-execstack.c: New file.
2773         * elf/Makefile (dl-routines): Add it.
2774         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
2775         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
2776
2777 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
2778
2779         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
2780
2781 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
2782
2783         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
2784         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
2785         __fcntl_nocancel.
2786
2787 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2788
2789         * malloc/malloc.c: Include <stdint.h>.
2790
2791 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
2792
2793         * posix/regcomp.c (build_word_op): Rename like...
2794         (build_charclass_op): ...this.  Accept two extra parameters,
2795         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
2796         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
2797         (parse_expression): Replace build_word_op with
2798         build_charclass_op, add new arguments, accept OP_SPACE
2799         and OP_NOTSPACE.
2800         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
2801         and OP_NOTSPACE.
2802
2803         * posix/regcomp.c (peek_token): Don't look back for ( or |
2804         to check whether to treat a caret as special.  It fails
2805         for the (extended) regex \(^.
2806         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
2807         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
2808
2809         * posix/regexec.c: Check out of bounds value before shifting.
2810
2811         * posix/regex_internal.h: Define __attribute for non-gcc.
2812
2813 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
2814
2815         * include/atomic.h (atomic_compare_and_exchange_val_rel,
2816         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
2817         to avoid confusion.
2818
2819         * sysdeps/unix/opendir.c: Include string.h.
2820
2821 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
2822
2823         * timezone/zdump.c: Update from tzcode2003c.
2824         * timezone/zic.c: Likewise.
2825         * timezone/leapseconds: Update from tzdata2003c.
2826
2827 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
2828
2829         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
2830         final build to ease quality control.
2831
2832         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
2833         ld.so, don't include NULL buffer pointer handling.
2834
2835 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
2836
2837         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
2838
2839 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
2840
2841         * libio/memstream.c (open_memstream): Use _IO_init instead of
2842         _IO_old_init.
2843
2844 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2845
2846         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
2847         have to recognize octal and hexadecimal numbers as well.  Simplify
2848         function, signs are handled in strtol.
2849         * posix/wordexp-test.c: Add tests for octal and hexadecimal
2850         numbers in arithmetic expressions.
2851
2852 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2853
2854         * elf/Makefile (distribute): Add tst-alignmod.c.
2855         (tests): Add tst-align.
2856         (modules-names): Add tst-alignmod.
2857         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
2858         $(stack-align-test-flags).
2859         ($(objpfx)tst-align): Depend on libdl.
2860         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
2861         * elf/tst-align.c: New file.
2862         * elf/tst-alignmod.c: New file.
2863         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
2864         * misc/tst-tsearch.c: Include tst-stack-align.h.
2865         (stack_align_check): New array.
2866         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
2867         (main): Report error if stack was not enough aligned
2868         in cmp_fn or walk_action.
2869         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
2870         * stdlib/tst-qsort.c: Include tst-stack-align.h.
2871         (align_check): New var.
2872         (compare): Use TEST_STACK_ALIGN () macro.
2873         (main): Report error if stack was not enough aligned in compare.
2874         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
2875         unneeded -mpreferred-stack-boundary=4.
2876         * sysdeps/x86_64/tst-stack-align.h: New file.
2877
2878         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
2879         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
2880
2881 2003-09-17  Philip Blundell  <philb@gnu.org>
2882
2883         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
2884         (BX): Define.
2885         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
2886
2887         * sysdeps/arm/sysdep.h (DO_RET): New.
2888
2889         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
2890         required but not defined.  Improve test of error code.
2891
2892 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2893
2894         * sysdeps/i386/Makefile (stack-align-test-flags): Add
2895         -malign-double -mpreferred-stack-boundary=4.
2896
2897 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2898
2899         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
2900         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
2901
2902 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2903
2904         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
2905         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
2906
2907 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2908
2909         * Makeconfig (stack-align-test-flags): Set.
2910         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
2911         $(stack-align-test-flags).
2912         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
2913         (align_check): New var.
2914         (comp): Use TEST_STACK_ALIGN macro.
2915         (do_test): Fail if align_check != 1.
2916         * sysdeps/generic/tst-stack-align.h: New file.
2917         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
2918         * sysdeps/i386/i686/tst-stack-align.h: New file.
2919
2920 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
2921
2922         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
2923         stack which is aligned (mod 16).
2924
2925 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
2926             Hans-Peter Nilsson  <hp@axis.com>
2927
2928         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
2929         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
2930
2931 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
2932
2933         * dirent/scandir.c: Include bits/libc-lock.h.
2934         (struct scandir_cancel_struct): New type.
2935         (cancel_handler): New function.
2936         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
2937         scandir_cancel_struct.
2938
2939 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
2940
2941         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
2942         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
2943         Add internal_statvfs.
2944         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
2945         instead of including "internal_statvfs.c".
2946         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
2947         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
2948         Add code to avoid the stat calls on all the reported mount points
2949         when we can determine mismatch in advance.
2950         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
2951         USBDEVFS_SUPER_MAGIC.
2952
2953 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
2954
2955         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
2956         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
2957
2958 2003-09-16  Bruno Haible  <bruno@clisp.org>
2959
2960         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
2961         invoking msgfmt, not before.
2962
2963 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
2964
2965         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
2966         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
2967         $(uses-callbacks).
2968         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
2969         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
2970         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
2971         * elf/dl-iteratephdr.c (cancel_handler): New function.
2972         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
2973         * elf/link.h (dl_iterate_phdr): Remove __THROW.
2974         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
2975         Add $(uses-callbacks).
2976         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
2977         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
2978         $(exceptions) to $(uses-callbacks).
2979         * Makeconfig (uses-callbacks): Set to $(exceptions).
2980         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
2981         $(uses-callbacks).
2982         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
2983         Likewise.
2984
2985 2003-09-15  Andreas Schwab  <schwab@suse.de>
2986
2987         * sysdeps/m68k/setjmp.c: Add hidden_def.
2988
2989 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
2990
2991         * libio/memstream.c (open_memstream): Don't allow wide char operations.
2992
2993         * dirent/dirent.h: Remove __THROW from scandir.
2994
2995 2003-09-14  Philip Blundell  <philb@gnu.org>
2996
2997         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
2998         to be available.
2999
3000         * sysdeps/unix/sysv/linux/arm/mmap64.S: Optimise code a little.
3001
3002         * sysdeps/arm/memset.S: Rewrite.
3003
3004 2003-09-12  Jakub Jelinek  <jakub@redhat.com>
3005
3006         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New.
3007         (__SSIZE_T_TYPE): Define to __SWORD_TYPE for gcc 2.95.x and
3008         __SLONGWORD_TYPE otherwise.
3009
3010 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
3011
3012         * io/Makefile (CFLAGS-ftw.c): Add -fexceptions.
3013         (CFLAGS-ftw64.c): Likewise.
3014
3015 2003-09-13  Ulrich Drepper  <drepper@redhat.com>
3016
3017         * nscd/Makefile (CFLAGS-nscd_getpw_r.c): Add -fexceptions.
3018         (CFLAGS-nscd_getgr_r.c): Likewise.
3019         (CFLAGS-nscd_gethst_r.c): Likewise.
3020
3021 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3022
3023         * sysdeps/unix/sysv/linux/if_index.c: Use only non-cancelable
3024         interfaces.
3025
3026         * grp/Makefile (CFLAGS-getgrgid_r.c, CFLAGS-getgrnam_r.c,
3027         CFLAGS-fgetgrent.c, CFLAGS-fgetgrent_r.c, CFLAGS-putgrent.c,
3028         CFLAGS-initgroups.c, CFLAGS-getgrgid.c): Add -fexceptions.
3029         * inet/Makefile (CFLAGS-either_ntoh.c, CFLAGS-either_hton.c,
3030         CFLAGS-getnetgrent.c, CFLAGS-getnetgrent_r.c): Likewise.
3031         * io/Makefile (CFLAGS-posix_fallocate.c, CFLAGS-posix_fallocate64.c):
3032         Likewise.
3033         * misc/Makefile (CFLAGS-err.c): Likewise.
3034         * posix/Makefile (CFLAGS-getaddrinfo.c, CFLAGS-spawn.c,
3035         CFLAGS-spawnp.c, CFLAGS-spawni.c, CFLAGS-pause.c, CFLAGS-glob.c,
3036         CFLAGS-glob64.c): Likewise.
3037         * pwd/Makefile (CFLAGS-getpw.c): Likewise.
3038         * shadow/Makefile (CFLAGS-fgetspent.c, CFLAGS-fgetspent_r.c,
3039         CFLAGS-putspent.c, CFLAGS-getspnam.c, CFLAGS-getspnam_r.c): Likewise.
3040         * stdio-common/Makefile (CFLAGS-cuserid.c): Likewise.
3041         * sunrpc/Makefile (CFLAGS-openchild.c): Likewise.
3042
3043         * stdlib/Makefile (CFLAGS-mkstemp.c): Remove definition.
3044
3045         * libio/stdio.h: Remove __THROW from cuserid prototype.
3046
3047         * locale/loadarchive.c: Use only non-cancelable interfaces.
3048         * resolv/herror.c (herror): Likewise.
3049
3050         * malloc/hooks.c: Before using IO stream mark stream so it uses
3051         only non-cancelable interfaces.
3052         * malloc/malloc.c: Likewise.
3053         * posix/getopt.c: Likewise.
3054
3055
3056 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3057
3058         * Makerules (LDFLAGS-c.so): Remove -u __register_frame.
3059
3060 2003-09-12  Ulrich Drepper  <drepper@redhat.com>
3061
3062         * stdio-common/stdio_ext.h: Mark most functions with __THROW.
3063
3064         * misc/err.h: Remove __THROW from all prototypes.
3065
3066         * posix/getopt.h (__THROW): Define if not already defined.  Add
3067         __THROW to the getopt functions.
3068
3069 2003-09-11  Ulrich Drepper  <drepper@redhat.com>
3070
3071         * io/Makefile (CFLAGS-lockf.c): Add -fexceptions.
3072         (CFLAGS-fts.c): Likewise.
3073         * io/fcntl.h: Remove __THROW from lockf prototypes.
3074         * io/fts.h: Remove most __THROW.
3075
3076 2003-09-11  H.J. Lu  <hongjiu.lu@intel.com>
3077
3078         * elf/tls-macros.h (TLS_IE): Add a stop bit for ia64.
3079         (TLS_LD): Likewise.
3080         (TLS_GD): Likewise.
3081
3082 2003-09-11  Jakub Jelinek  <jakub@redhat.com>
3083
3084         * libio/fileops.c (_IO_new_file_overflow): Add INTUSE to
3085         _IO_free_backup_area call.
3086
3087 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3088
3089         * sysdeps/unix/sysv/linux/mips/pread64.c (__libc_pread64): Fix
3090         syscall invocation.
3091         * sysdeps/unix/sysv/linux/mips/pwrite64.c (__libc_pwrite64): Likewise.
3092         * sysdeps/unix/sysv/linux/mips/pread.c (__libc_pread): Likewise.
3093         Also, only assert off_t size is 4 for N32 and O32, and clean up
3094         white space.
3095         * sysdeps/unix/sysv/linux/mips/pwrite.c (__libc_pwrite): Likewise.
3096
3097 2003-09-10  Roland McGrath  <roland@redhat.com>
3098
3099         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr):
3100         Don't use c_ispeed under [! _HAVE_STRUCT_TERMIOS_C_ISPEED].
3101         Don't use c_ospeed under [! _HAVE_STRUCT_TERMIOS_C_OSPEED].
3102         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Likewise.
3103         Reported by Daniel Jacobowitz  <drow@mvista.com>.
3104
3105 2003-09-10  Jakub Jelinek  <jakub@redhat.com>
3106
3107         * string/Makefile (strop-tests): Add memccpy.
3108         * string/test-memccpy.c: New test.
3109
3110 2003-09-09  Jakub Jelinek  <jakub@redhat.com>
3111
3112         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT): Add
3113         siginfo_t * argument before, change into struct ucontext *.
3114         (SIGCONTEXT_EXTRA_ARGS): Define to _si,.
3115         (GET_PC, GET_FRAME, GET_STACK): Adjust for ctx being a pointer
3116         instead of structure.
3117         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (REGISTER_DUMP):
3118         Likewise.
3119
3120 2003-09-09  Ulrich Drepper  <drepper@redhat.com>
3121
3122         * string/stratcliff.c (main): Check memccpy.
3123
3124 2003-04-11  Jes Sorensen  <jes@wildopensource.com>
3125
3126         * sysdeps/ia64/memccpy.S: When recovering for src_aligned and the
3127         character is found during recovery, use correct register when
3128         determining the position of the found character.
3129
3130 2003-04-01  Jes Sorensen  <jes@wildopensource.com>
3131
3132         * sysdeps/ia64/memccpy.S: Use speculatively loads for readahead to
3133         avoid segfaults when reading from unmapped pages. For aligned
3134         reload and continue, for misaligned, roll back and use byte copy.
3135         Save ar.ec on entry and restore on exit.
3136
3137 2003-09-09  Chris Demetriou  <cgd@broadcom.com>
3138
3139         * sysdeps/unix/mips/sysdep.h (PSEUDO_END): Undef before defining.
3140
3141 2003-09-08  Chris Demetriou  <cgd@broadcom.com>
3142
3143         * sysdeps/mips/mips64/n32/Implies: Move ieee754/ldbl-128 to
3144         the top of the list.
3145         * sysdeps/mips/mips64/n64/Implies: Likewise.
3146
3147 2003-09-08  Roland McGrath  <roland@frob.com>
3148
3149         * sysdeps/unix/sysv/linux/speed.c
3150         (cfsetospeed): Only set c_ospeed under [_HAVE_STRUCT_TERMIOS_C_OSPEED].
3151         (cfsetispeed): Only set c_ispeed under [_HAVE_STRUCT_TERMIOS_C_ISPEED].
3152         * sysdeps/unix/sysv/linux/bits/termios.h
3153         (_HAVE_STRUCT_TERMIOS_C_ISPEED, _HAVE_STRUCT_TERMIOS_C_OSPEED): Define.
3154         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Likewise.
3155         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
3156
3157 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3158
3159         * sysdeps/unix/sysv/linux/x86_64/register-dump.h: Undo last change.
3160         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h: Likewise.
3161
3162 2003-09-08  Jakub Jelinek  <jakub@redhat.com>
3163
3164         * sysdeps/generic/bits/types.h (__quad_t): Make long int if 64-bit.
3165         (__u_quad_t): Make unsigned long int if 64-bit.
3166         (__SQUAD_TYPE): Make long int if 64-bit.
3167         (__UQUAD_TYPE): Make unsigned long int if 64-bit.
3168         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: Remove.
3169
3170 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3171
3172         * Makefile (tests): Run check-c++-types.sh if possible.
3173         * scripts/check-c++-types.h: New file.
3174         * scripts/data/c++-types-i386-linux-gnu.data: New file.
3175
3176 2003-09-08  Andreas Jaeger  <aj@suse.de>
3177
3178         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
3179         Use struct sigcontext.
3180
3181         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
3182         Use struct sigcontext.
3183         (GET_PC): Adopt.
3184         (GET_FRAME): Likewise.
3185         (GET_STACK): Likewise.
3186
3187 2003-09-08  Wolfram Gloger  <wg@malloc.de>
3188
3189         * malloc/malloc.c (sYSMALLOc): Move foreign sbrk accounting into
3190         contiguous case.  Bug report from Prem Gopalan <prem@mazunetworks.com>.
3191         (mALLOPt): Avoid requirement of C99.
3192
3193 2003-09-08  Ulrich Drepper  <drepper@redhat.com>
3194
3195         * libio/bug-ftell.c: Include <sys/types.h>.
3196         (main): Mark cp as const.
3197
3198 2003-09-07  Jakub Jelinek  <jakub@redhat.com>
3199
3200         * sysdeps/unix/sysv/linux/syscalls.list (fcntl): Remove.
3201         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: Remove.
3202
3203 2003-09-05  Roland McGrath  <roland@redhat.com>
3204
3205         * sysdeps/unix/sysv/linux/tcgetattr.c (__tcgetattr): Fill in c_ispeed
3206         and c_ospeed fields.
3207         * sysdeps/unix/sysv/linux/speed.c (cfsetospeed): Set c_ospeed field.
3208         (cfsetispeed): Set c_ispeed field.
3209         * sysdeps/unix/sysv/linux/tcsetattr.c (IBAUD0): Define unconditionally
3210         to match corresponding speed.c code.
3211
3212 2003-09-06  Ulrich Drepper  <drepper@redhat.com>
3213
3214         * libio/wfileops.c (_IO_wfile_underflow): Mark beginning of the
3215         narrow character buffer.
3216         * libio/Makefile: Add rules to build and run bug-ftell.
3217         * libio/bug-ftell.c: New file.
3218
3219         * stdio-common/vfprintf.c: Don't use the first grouping number twice.
3220
3221         * stdio-common/vfscanf.c (vfscanf): Fix recognition of characters
3222         matching the decimal point and possibly leading the thousands
3223         separator.  This caused the recognition of thousands separators to
3224         always fail.
3225
3226 2003-09-05  Ulrich Drepper  <drepper@redhat.com>
3227
3228         * libio/fileops.c (_IO_new_file_overflow): Handle switching to
3229         write mode from read in backup buffer.
3230         * libio/Makefile (tests): Add bug-ungetc2.
3231         * libio/bug-ungetc2.c: New file.
3232
3233 2003-09-05  Roland McGrath  <roland@redhat.com>
3234
3235         * nss/getXXbyYY.c (FUNCTION_NAME): Remove unused variable.
3236
3237 2003-09-04  Roland McGrath  <roland@frob.com>
3238
3239         * sysdeps/mach/hurd/mmap.c (__mmap): If io_map fails with MIG_BAD_ID,
3240         EOPNOTSUPP, or ENOSYS, change it to ENODEV.
3241
3242 2003-09-04  H.J. Lu  <hongjiu.lu@intel.com>
3243
3244         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ):
3245         Fix a typo.
3246
3247 2003-09-05  Andreas Jaeger  <aj@suse.de>
3248
3249         * sysdeps/i386/bits/string.h (__memrchr): Do addition in assembler
3250         to make it conforming C.
3251         * sysdeps/i386/i486/bits/string.h (__memrchr): Likewise.
3252
3253         * sysdeps/unix/sysv/linux/i386/fcntl.c (__fcntl_nocancel): Change
3254         prototype to use variable argument lists and get the possible one
3255         argument via va_arg.
3256         * sysdeps/unix/sysv/linux/fcntl.c (__fcntl_nocancel): Likewise.
3257         * sysdeps/unix/sysv/linux/x86_64/fcntl.c: New.
3258
3259 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
3260
3261         * posix/unistd.h: Add back __THROW to sysconf, pathconf, fpathconf.
3262
3263         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_filesize_max):
3264         Report correct value for vxfs.
3265         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define VXFS_SUPER_MAGIC.
3266
3267         * gmon/gmon.c: Use only not-cancelable syscalls to write profiling
3268         data.
3269
3270         * sysdeps/generic/utmp_file.c: Use not-cancelable syscalls all
3271         over the place.  It would be allowed to have these functions as
3272         cancellation points but the cleanup would be ugly and a lot of
3273         work.
3274
3275         * sysdeps/generic/not-cancel.h (fcntl_not_cancel): Define.
3276         * sysdeps/unix/sysv/linux/not-cancel.h (fcntl_not_cancel): Define.
3277
3278         * include/fcntl.h (__fcntl_nocancel): Declare.
3279         * sysdeps/unix/sysv/linux/fcntl.c: New file.
3280         * sysdeps/unix/sysv/linux/i386/fcntl.c (__libc_fcntl): Only enable
3281         cancellation if absolutely needed.
3282         (__fcntl_nocancel): Define.
3283
3284         * posix/unistd.h (gethostid): Remove __THROW.  Clarify comment.
3285         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-gethostid.c): Add
3286         -fexceptions.
3287         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Use
3288         extend_alloca.
3289
3290         * resolv/res_init.c (__res_nclose): Use close_not_cancel_no_status
3291         instead of __close.
3292
3293         * nss/getXXbyYY.c (FUNCTION_NAME): Add a few casts.  Remove
3294         unnecessary errno handling.
3295
3296         * nss/getXXbyYY_r.c (INTERNAL): Use better variable name.
3297         Initialize it in all cases.  Change it to be a bit more like the
3298         code we had before.
3299
3300 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3301
3302         * libio/fileops.c (_IO_file_read, _IO_new_file_write): Add
3303         __builtin_expect.
3304         (_IO_file_open): Likewise.  Use close_not_cancel.
3305
3306 2003-09-04  Ulrich Drepper  <drepper@redhat.com>
3307
3308         * libio/libio.h: Define _IO_FLAGS2_NOTCANCEL.
3309         * libio/fileops.c [_LIBC]: Remove close macro.
3310         (_IO_file_open): If _IO_FLAGS2_NOTCANCEL is set, use open_not_cancel.
3311         (_IO_new_file_open): Recognize 'c' flag in mode string.
3312         (_IO_file_read): If _IO_FLAGS2_NOTCANCEL is set use read_not_cancel.
3313         (_IO_new_file_write): If _IO_FLAGS2_NOTCANCEL is set use
3314         write_not_cancel.
3315         * iconv/gconv_conf.c: Use fopen with 'c' mode flag.
3316         * inet/rcmd.c: Likewise.
3317         * inet/ruserpass.c: Likewise.
3318         * intl/localealias.c: Likewise.
3319         * malloc/mtrace.c: Likewise.
3320         * misc/getpass.c: Likewise.
3321         * misc/getttyent.c: Likewise.
3322         * misc/mntent_r.c: Likewise.
3323         * misc/getusershell.c: Likewise.
3324         * nss/nsswitch.c: Likewise.
3325         * resolv/res_hconf.c: Likewise.
3326         * resolv/res_init.c: Likewise.
3327         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
3328         * time/getdate.c: Likewise.
3329         * time/tzfile.c: Likewise.
3330         * misc/fstab.h: Undo last change.
3331         * misc/mntent.h: Likewise.
3332         * misc/Makefile: Remove CFLAGS-mntent_r.c, CFLAGS-mntent.c, and
3333         CFLAGS-fstab.c definition.
3334
3335 2003-09-04  Jakub Jelinek  <jakub@redhat.com>
3336
3337         * sysdeps/generic/unwind.h (_Unwind_GetBSP): Add prototype.
3338
3339 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3340
3341         * nss/getXXbyYY_r.c (INTERNAL): Explicitly set errno and avoid
3342         returning ERANGE if this wasn't intended.
3343
3344 2003-09-03  Jakub Jelinek  <jakub@redhat.com>
3345
3346         * intl/loadmsgcat.c (open, close, read, mmap, munmap): Define as
3347         function-like macros.
3348
3349 2003-09-03  Ulrich Drepper  <drepper@redhat.com>
3350
3351         * grp/Makefile (CFLAGS-getgrent_r.c): Add -fexceptions.
3352         (CFLAGS-getgrent.c): Likewise.
3353         * pwd/Makefile (CFLAGS-getpwent_r.c): Add -fexceptions.
3354         (CFLAGS-getpwent.c): Likewise.
3355         * shadow/Makefile (CFLAGS-getspent_r.c): Add -fexceptions.
3356         (CFLAGS-getspent.c): Likewise.
3357
3358         * inet/Makefile: Add -fexceptions to CFLAGS for the various
3359         getXXent and getXXbyYY functions.
3360
3361         * locale/loadlocale.c: Use not-cancelable variants of open, close,
3362         and read.
3363
3364 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3365
3366         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
3367         rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait, rt_sigqueueinfo and
3368         rt_sigpending.
3369         * sysdeps/unix/sysv/linux/alpha/sigaction.c (__syscall_rt_sigaction):
3370         New prototype.
3371         * sysdeps/unix/sysv/linux/arm/syscalls.list (__syscall_*): Remove
3372         unused __syscall_ stubs.
3373         * sysdeps/unix/sysv/linux/arm/Makefile (sysdep_routines): Remove
3374         rt_*.
3375         * sysdeps/unix/sysv/linux/cris/Makefile: Removed.
3376         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list
3377         (__syscall_recvfrom, __syscall_sendto): Remove unused aliases.
3378         * sysdeps/unix/sysv/linux/mips/syscalls.list (__syscall_*): Remove
3379         unused __syscall_ stubs.
3380         * sysdeps/unix/sysv/linux/mips/Makefile (sysdep_routines): Remove rt_*.
3381         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list
3382         (__syscall_*): Remove unused __syscall_ stubs.
3383         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3384         (__syscall_*): Likewise.
3385         * sysdeps/unix/sysv/linux/powerpc/Makefile (sysdep_routines): Remove
3386         rt_*.
3387         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__syscall_*):
3388         Remove unused __syscall_ stubs.
3389         * sysdeps/unix/sysv/linux/sh/Makefile (sysdep_routines): Remove rt_*.
3390         * sysdeps/unix/sysv/linux/rt_sigaction.c: Removed.
3391         * sysdeps/unix/sysv/linux/rt_sigpending.c: Removed.
3392         * sysdeps/unix/sysv/linux/rt_sigprocmask.c: Removed.
3393         * sysdeps/unix/sysv/linux/rt_sigqueueinfo.c: Removed.
3394         * sysdeps/unix/sysv/linux/rt_sigreturn.c: Removed.
3395         * sysdeps/unix/sysv/linux/rt_sigsuspend.c: Removed.
3396         * sysdeps/unix/sysv/linux/rt_sigtimedwait.c: Removed.
3397         * sysdeps/unix/sysv/linux/s_pread64.c: Removed.
3398         * sysdeps/unix/sysv/linux/s_pwrite64.c: Removed.
3399         * sysdeps/unix/sysv/linux/alpha/gethostname.c: Remove unused
3400         __syscall_* prototypes.
3401         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h: Likewise.
3402         * sysdeps/unix/sysv/linux/alpha/msgctl.c: Likewise.
3403         * sysdeps/unix/sysv/linux/alpha/semctl.c: Likewise.
3404         * sysdeps/unix/sysv/linux/alpha/shmctl.c: Likewise.
3405         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise.
3406         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
3407         * sysdeps/unix/sysv/linux/i386/fchown.c: Likewise.
3408         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3409         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
3410         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
3411         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
3412         * sysdeps/unix/sysv/linux/i386/setuid.c: Likewise.
3413         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
3414         * sysdeps/unix/sysv/linux/i386/getgroups.c: Likewise.
3415         * sysdeps/unix/sysv/linux/i386/getmsg.c: Likewise.
3416         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
3417         * sysdeps/unix/sysv/linux/i386/getresgid.c: Likewise.
3418         * sysdeps/unix/sysv/linux/i386/getresuid.c: Likewise.
3419         * sysdeps/unix/sysv/linux/i386/getrlimit.c: Likewise.
3420         * sysdeps/unix/sysv/linux/i386/getuid.c: Likewise.
3421         * sysdeps/unix/sysv/linux/i386/lchown.c: Likewise.
3422         * sysdeps/unix/sysv/linux/i386/lockf64.c: Likewise.
3423         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
3424         * sysdeps/unix/sysv/linux/i386/putmsg.c: Likewise.
3425         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
3426         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Likewise.
3427         * sysdeps/unix/sysv/linux/i386/setgid.c: Likewise.
3428         * sysdeps/unix/sysv/linux/i386/setgroups.c: Likewise.
3429         * sysdeps/unix/sysv/linux/i386/setregid.c: Likewise.
3430         * sysdeps/unix/sysv/linux/i386/setresgid.c: Likewise.
3431         * sysdeps/unix/sysv/linux/i386/setresuid.c: Likewise.
3432         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
3433         * sysdeps/unix/sysv/linux/i386/setrlimit.c: Likewise.
3434         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3435         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Likewise.
3436         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Likewise.
3437         * sysdeps/unix/sysv/linux/ia64/sigaction.c: Likewise.
3438         * sysdeps/unix/sysv/linux/ia64/sigpending.c: Likewise.
3439         * sysdeps/unix/sysv/linux/ia64/sigprocmask.c: Likewise.
3440         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c: Likewise.
3441         * sysdeps/unix/sysv/linux/ia64/xstat.c: Likewise.
3442         * sysdeps/unix/sysv/linux/m68k/chown.c: Likewise.
3443         * sysdeps/unix/sysv/linux/mips/ftruncate64.c: Likewise.
3444         * sysdeps/unix/sysv/linux/mips/pread.c: Likewise.
3445         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
3446         * sysdeps/unix/sysv/linux/mips/ptrace.c: Likewise.
3447         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
3448         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
3449         * sysdeps/unix/sysv/linux/mips/sigaction.c: Likewise.
3450         * sysdeps/unix/sysv/linux/mips/truncate64.c: Likewise.
3451         * sysdeps/unix/sysv/linux/mips/ustat.c: Likewise.
3452         * sysdeps/unix/sysv/linux/mips/xmknod.c: Likewise.
3453         * sysdeps/unix/sysv/linux/powerpc/chown.c: Likewise.
3454         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
3455         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c: Likewise.
3456         * sysdeps/unix/sysv/linux/s390/s390-32/lchown.c: Likewise.
3457         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Likewise.
3458         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Likewise.
3459         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Likewise.
3460         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c: Likewise.
3461         * sysdeps/unix/sysv/linux/s390/s390-64/sigpending.c: Likewise.
3462         * sysdeps/unix/sysv/linux/s390/s390-64/sigprocmask.c: Likewise.
3463         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
3464         * sysdeps/unix/sysv/linux/sparc/sparc64/sigpending.c: Likewise.
3465         * sysdeps/unix/sysv/linux/sparc/sparc64/sigprocmask.c: Likewise.
3466         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Likewise.
3467         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3468         * sysdeps/unix/sysv/linux/execve.c: Likewise.
3469         * sysdeps/unix/sysv/linux/aio_sigqueue.c: Likewise.
3470         * sysdeps/unix/sysv/linux/reboot.c: Likewise.
3471         * sysdeps/unix/sysv/linux/_exit.c: Likewise.
3472         * sysdeps/unix/sysv/linux/ftruncate64.c: Likewise.
3473         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3474         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
3475         * sysdeps/unix/sysv/linux/gai_sigqueue.c: Likewise.
3476         * sysdeps/unix/sysv/linux/readahead.c: Likewise.
3477         * sysdeps/unix/sysv/linux/getcwd.c: Likewise.
3478         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
3479         * sysdeps/unix/sysv/linux/getdents.c: Likewise.
3480         * sysdeps/unix/sysv/linux/readv.c: Likewise.
3481         * sysdeps/unix/sysv/linux/getpriority.c: Likewise.
3482         * sysdeps/unix/sysv/linux/sigaction.c: Likewise.
3483         * sysdeps/unix/sysv/linux/ipc_priv.h: Likewise.
3484         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
3485         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
3486         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
3487         * sysdeps/unix/sysv/linux/mmap64.c: Likewise.
3488         * sysdeps/unix/sysv/linux/ustat.c: Likewise.
3489         * sysdeps/unix/sysv/linux/poll.c: Likewise.
3490         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
3491         * sysdeps/unix/sysv/linux/writev.c: Likewise.
3492         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3493         * sysdeps/unix/sysv/linux/ptrace.c: Likewise.
3494         * sysdeps/unix/sysv/linux/sigpending.c: Likewise.
3495         * sysdeps/unix/sysv/linux/sigprocmask.c: Likewise.
3496         * sysdeps/unix/sysv/linux/sigqueue.c: Likewise.
3497         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
3498         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
3499         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
3500         * sysdeps/unix/sysv/linux/truncate64.c: Likewise.
3501         * sysdeps/unix/sysv/linux/xmknod.c: Likewise.
3502         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
3503
3504 2003-09-02  Jakub Jelinek  <jakub@redhat.com>
3505
3506         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Revert last change.
3507         * sysdeps/unix/sysv/linux/powerpc/syscalls.list: New file.
3508         * sysdeps/unix/sysv/linux/sparc/syscalls.list: New file.
3509
3510 2003-09-02  Ulrich Drepper  <drepper@redhat.com>
3511
3512         * stdio-common/Makefile (CFLAGS-vprintf.c): Add -fexceptions.
3513
3514         * intl/loadmsgcat.c: For _LIBC, call not cancelable versions of
3515         open, close, and read.
3516
3517         * sysdeps/unix/sysv/linux/i386/sysdep.h (PSEUDO): Also define
3518         *_nocancel name.
3519
3520         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add waitpid.
3521
3522         * libio/Makefile (CFLAGS-oldtmpfile.c): Add -fexceptions.
3523         * sysdeps/generic/tmpfile.c (tmpfile): Use __unlink instead of remove.
3524         * libio/oldtmpfile.c (__old_tmpfile): Likewise.
3525
3526         * misc/Makefile (CFLAGS-getusershell.c): Add -fexceptions.
3527
3528         * io/Makefile (CFLAGS-statfs.c): Add -fexceptions.
3529         (CFLAGS-fstatfs.c): Likewise.
3530         (CFLAGS-statvfs.c): Likewise.
3531         (CFLAGS-fstatvfs.c): Likewise.
3532
3533 2003-09-01  Ulrich Drepper  <drepper@redhat.com>
3534
3535         * misc/Makefile (CFLAGS-getsysstats.c): Add -fexceptions.
3536         * posix/unistd.h: Remove __THROW from pathconf, fpathconf,
3537         sysconf.
3538         * posix/Makefile (CFLAGS-sysconf.c): Add -fexceptions.
3539         (CFLAGS-pathconf.c): Likewise.
3540         (CFLAGS-fpathconf.c): Likewise.
3541
3542         * misc/Makefile (CFLAGS-fstab.c): Add -fexceptions.
3543         * misc/fstab.h: Remove all __THROW.
3544         * misc/Makefile (CFLAGS-mntent.c): Add -fexceptions.
3545         (CFLAGS-mntent_r.c): Likewise.
3546         * misc/mntent.h: Remove most __THROW.
3547
3548         * misc/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
3549         (CFLAGS-mkstemp64.c): Likewise.
3550
3551         * sysdeps/generic/wordexp.c (parse_comm): Disable cancellation
3552         around call to exec_comm.
3553         * posix/wordexp.h: Remove __THROW from wordexp.
3554         * posix/Makefile (CFLAGS-wordexp.c): Add -fexceptions.
3555
3556         * sysdeps/unix/sysv/linux/getloadavg.c (getloadavg): Use
3557         not-cancelable functions.
3558
3559         * libio/Makefile (CFLAGS-oldiofopen.c): Add -fexceptions.
3560         (CFLAGS-iofopen.c): Likewise.
3561         (CFLAGS-iofopen64.c): Likewise.
3562
3563         * stdlib/fmtmsg.c (fmtmsg): Disable cancellation around output
3564         functions.
3565         * stdlib/Makefile (CFLAGS-fmtmsg.c): Add -fexceptions.
3566         * stdlib/fmtmsg.h: Remove __THROW from fmtmsg.
3567
3568         * stdlib/stdlib.h: Remove __THROW from posix_openpt and getpt.
3569         * login/Makefile (CFLAGS-getpt.c): Add -fexceptions.
3570
3571 2003-09-01  Thorsten Kukuk  <kukuk@suse.de>
3572
3573         * nis/nss_compat/compat-spwd.c (getspnam_plususer): Return
3574         NSS_STATUS_SUCCESS if entry was found.
3575         (getspent_next_file): Store user in blacklist after entry
3576         was found, use innetgr.
3577
3578 2003-09-01  Jakub Jelinek  <jakub@redhat.com>
3579
3580         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise.c: New.
3581         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c: New.
3582
3583         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Fix tls offset
3584         computation for TCB_AT_TP.  Support l_firstbyte_offset != 0 for
3585         DTV_AT_TP, optimize.
3586
3587 2003-08-31  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3588
3589         * sysdeps/unix/sysv/linux/sh/Versions: Add posix_fadvise64 and
3590         posix_fallocate64 at GLIBC_2.3.3.
3591         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO_ERRVAL): Define.
3592         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3593
3594 2003-08-08  H.J. Lu  <hongjiu.lu@intel.com>
3595
3596         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Remove __syscall_
3597         functions.
3598
3599 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3600
3601         * libio/libioP.h (_IO_acquire_lock_fct): Define as inline function.
3602         Code by Richard Henderson.
3603
3604 2003-08-31  Philip Blundell  <philb@gnu.org>
3605
3606         * sysdeps/unix/sysv/linux/arm/Versions: Add posix_fadvise64 and
3607         posix_fallocate64 at GLIBC_2.3.3.
3608
3609 2003-08-31  Ulrich Drepper  <drepper@redhat.com>
3610
3611         * sysdeps/x86_64/bsd-_setjmp.S: Use HIDDEN_JUMPTARGET.
3612         * include/setjmp.h: Add libc_hidden_proto for __sigsetjmp.
3613
3614 2003-08-30  Jakub Jelinek  <jakub@redhat.com>
3615
3616         * sysdeps/generic/sysdep.h (cfi_window_save, CFI_WINDOW_SAVE): Define.
3617         * sysdeps/unix/sysv/linux/sparc/bits/setjmp.h: Allow file to be
3618         included multiple times.
3619         * sysdeps/unix/sysv/linux/sparc/sparc32/clone.S (__clone): Pass
3620         ptid, tls, ctid arguments to the kernel.
3621         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c (__getpagesize):
3622         Use INTERNAL_SYSCALL instead of __syscall_getpagesize.
3623         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c
3624         (__libc_sigaction): Use INLINE_SYSCALL instead of
3625         __syscall_rt_sigaction.
3626         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
3627         (__syscall_getgroups, __syscall_getpagesize, __syscall__llseek,
3628         __syscall_setfsgid, __syscall_setfsuid, __syscall_setgid,
3629         __syscall_setgroups, __syscall_setregid, __syscall_setreuid,
3630         __syscall_ipc, __syscall_setuid, __syscall_rt_sigaction,
3631         __syscall_rt_sigpending, __syscall_rt_sigprocmask,
3632         __syscall_rt_sigqueueinfo, __syscall_rt_sigsuspend,
3633         __syscall_rt_sigtimedwait): Remove unneeded syscall stubs.
3634         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile (sysdep_routines):
3635         Remove rt_sigsuspend, rt_sigprocmask, rt_sigtimedwait,
3636         rt_sigqueueinfo, rt_sigaction and rt_sigpending.
3637         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3638         (__CLONE_SYSCALL_STRING): Define.
3639         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Add
3640         CFI directives.
3641         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h
3642         (__CLONE_SYSCALL_STRING): Define.
3643         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_CLONE_SYSCALL):
3644         Define.
3645         * sysdeps/unix/sysv/linux/sparc/system.c: New file.
3646
3647 2003-08-30  Ulrich Drepper  <drepper@redhat.com>
3648
3649         * sunrpc/rpc/clnt.h: Remove a few __THROW.
3650         * sunrpc/Makefile (CFLAGS-auth_unix.c): Add -fexceptions.
3651         (CFLAGS-key_call.c): Likewise.
3652         (CFLAGS-pmap_rmt.c): Likewise.
3653         (CFLAGS-clnt_perr.c): Likewise.
3654         * sunrpc/rpc/auth.h: Remove serveral __THROW.
3655
3656         * inet/Makefile (CFLAGS-gethstbyad_r.c): Add -fexceptions.
3657         (CFLAGS-gethstbynm_r.c): Likewise.
3658         (CFLAGS-gethstbynm2_r.c): Likewise.
3659         (CFLAGS-rcmd.c): Likewise.
3660         * resolv/Makefile (CFLAGS-res_hconf.c): Add -fexceptions.
3661
3662         * argp/Makefile (CFLAGS-argp-help.c): Add -fexceptions.
3663         (CFLAGS-argp-fmtstream.c): Likewise.
3664         * argp/argp.h: Remove a number of __THROW.
3665
3666         * misc/sys/syslog.h (vsyslog): Remove __THROW.
3667
3668         * misc/Makefile (CFLAGS-getpass.c): Add -fexceptions.
3669         * misc/getpass.c (getpass): Add cleanup handler to ensure the
3670         stream is closed even if the thread is canceled.
3671         (call_fclose): New function.
3672         * posix/unistd.h: Remove __THROW from getpass prototype.
3673
3674         * posix/Makefile (CFLAGS-getopt.c): Add -fexceptions.
3675
3676         * signal/signal.h (psignal): Remove __THROW.
3677         * stdio-common/Makefile (CFLAGS-psignal.c): Add -fexceptions.
3678
3679         * misc/Makefile (CFLAGS-error.c): Define.
3680         * misc/error.c (error): Disable cancellation handling around the
3681         actual output.  The message should in any case be printed.
3682         (error_at_line): Likewise.
3683
3684         * misc/error.h: Protect parameter names with leading __.
3685
3686 2003-08-28  Carlos O'Donell  <carlos@baldric.uwo.ca>
3687
3688         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Add semtimedop.
3689
3690 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3691
3692         * libio/iofgetpos64.c (_IO_new_fgetpos64): Move lock release to the
3693         end.
3694
3695 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3696
3697         * libio/stdio.h: Remove a few more __THROW.
3698
3699 2003-08-29  Jakub Jelinek  <jakub@redhat.com>
3700
3701         * libio/Makefile: Compile fputc.c, fputwc.c, freopen64.c, freopen.c,
3702         fseek.c, fseeko64.c, fseeko.c, ftello64.c, ftello.c, fwide.c, getc.c,
3703         getchar.c, getwc.c, getwchar.c, iofclose.c, iofflush.c, iofgetpos64.c,
3704         iofgetpos.c, iofgets.c, iofgetws.c, iofputs.c, iofputws.c, iofread.c,
3705         iofsetpos64.c, iofsetpos.c, ioftell.c, iofwrite.c, iogetdelim.c,
3706         iogetline.c, iogets.c, iogetwline.c, ioputs.c, ioseekoff.c,
3707         ioseekpos.c, iosetbuffer.c, iosetvbuf.c, ioungetc.c, ioungetwc.c,
3708         oldfileops.c, oldiofclose.c, oldiofgetpos64.c, oldiofgetpos.c,
3709         oldiofsetpos64.c, oldiofsetpos.c, peekc.c, putc.c, putchar.c, putwc.c,
3710         putwchar.c and rewind.c with exceptions.
3711         * sysdeps/generic/bits/stdio-lock.h (_IO_acquire_lock,
3712         _IO_release_lock): Define.
3713         * libio/fileops.c (_IO_new_file_underflow): Use it.
3714         * libio/fputc.c (fputc): Likewise.
3715         * libio/fputwc.c (fputwc): Likewise.
3716         * libio/freopen64.c (freopen64):
3717         * libio/freopen.c (freopen): Likewise.
3718         * libio/fseek.c (fseek): Likewise.
3719         * libio/fseeko64.c (fseeko64): Likewise.
3720         * libio/fseeko.c (fseeko): Likewise.
3721         * libio/ftello64.c (ftello64): Likewise.
3722         * libio/ftello.c (ftello): Likewise.
3723         * libio/fwide.c (fwide): Likewise.
3724         * libio/getc.c (_IO_getc): Likewise.
3725         * libio/getchar.c (getchar): Likewise.
3726         * libio/getwc.c (_IO_getwc): Likewise.
3727         * libio/getwchar.c (getwchar): Likewise.
3728         * libio/iofclose.c (_IO_new_fclose):
3729         * libio/iofflush.c (_IO_fflush): Likewise.
3730         * libio/iofgetpos64.c (_IO_new_fgetpos64): Likewise.
3731         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
3732         * libio/iofgets.c (_IO_fgets): Likewise.
3733         * libio/iofgetws.c (fgetws): Likewise.
3734         * libio/iofputs.c (_IO_fputs): Likewise.
3735         * libio/iofputws.c (fputws): Likewise.
3736         * libio/iofread.c (_IO_fread): Likewise.
3737         * libio/iofsetpos64.c (_IO_new_fsetpos64): Likewise.
3738         * libio/iofsetpos.c (_IO_new_fsetpos): Likewise.
3739         * libio/ioftell.c (_IO_ftell): Likewise.
3740         * libio/iofwrite.c (_IO_fwrite): Likewise.
3741         * libio/iogetdelim.c (_IO_getdelim): Likewise.
3742         * libio/iogets.c (_IO_gets): Likewise.
3743         * libio/ioputs.c (_IO_puts): Likewise.
3744         * libio/ioseekoff.c (_IO_seekoff): Likewise.
3745         * libio/ioseekpos.c (_IO_seekpos): Likewise.
3746         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
3747         * libio/iosetvbuf.c (_IO_setvbuf): Likewise.
3748         * libio/ioungetc.c (_IO_ungetc): Likewise.
3749         * libio/ioungetwc.c (ungetwc): Likewise.
3750         * libio/oldiofclose.c (_IO_old_fclose): Likewise.
3751         * libio/oldiofgetpos64.c (_IO_old_fgetpos64): Likewise.
3752         * libio/oldiofgetpos.c (_IO_old_fgetpos): Likewise.
3753         * libio/oldiofsetpos64.c (_IO_old_fsetpos64): Likewise.
3754         * libio/oldiofsetpos.c (_IO_old_fsetpos): Likewise.
3755         * libio/peekc.c (_IO_peekc_locked): Likewise.
3756         * libio/putc.c (_IO_putc): Likewise.
3757         * libio/putchar.c (putchar): Likewise.
3758         * libio/putwc.c (putwc): Likewise.
3759         * libio/putwchar.c (putwchar): Likewise.
3760         * libio/rewind.c (rewind): Likewise.
3761         * libio/wfileops.c (_IO_wfile_underflow): Likewise.
3762
3763 2003-08-29  Ulrich Drepper  <drepper@redhat.com>
3764
3765         * signal/signal.h: sighold, sigrelse, sigignore, sigset were
3766         available in XPG4.2.
3767
3768 2003-08-27  Phil Knirsch  <pknirsch@redhat.com>
3769             Jakub Jelinek  <jakub@redhat.com>
3770
3771         * sunrpc/svc.c (svc_getreqset): Fix fds_bits reading on 64-bit
3772         big endian arches.  Don't read beyond end of fds_bits array.
3773
3774 2003-04-27  Bruno Haible  <bruno@clisp.org>
3775
3776         * manual/message.texi (Advanced gettext functions): Add information
3777         about Korean, Portuguese, Latvian. Gaeilge is also known as Irish.
3778         Add section about Lithuanian, reported by Ricardas Cepas
3779         <rch@richard.eu.org>.
3780         Add information about Croatian.
3781         Ukrainian is like Russian, reported by Andy Rysin <arysin@yahoo.com>.
3782         Remove remark about continuation lines that is not true for PO files.
3783         Fix formula for Slovenian, reported by Roman Maurer
3784         <roman.maurer@amis.net>.
3785
3786 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3787
3788         * math/math_private.h: Declare __copysignf.
3789         * sysdeps/ieee754/flt-32/s_scalbnf.c: Use __copysignf instead of
3790         copysignf.
3791
3792         * sysdeps/x86_64/fpu/bits/mathinline.h: Define __signbitf,
3793         __signbit, and __signbitl inline functions.
3794
3795         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Use
3796         HIDDEN_JUMPTARGET instead of JUMPTARGET to call exit().
3797
3798         * sysdeps/x86_64/bsd-_setjmp.S [PIC]: Jump to __GI___sigsetjmp.
3799         * sysdeps/x86_64/setjmp.S: Add libc_hidden_def for __sigsetjmp.
3800
3801 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3802
3803         * inet/inet_mkadr.c (inet_makeaddr): Optimize.
3804
3805 2003-08-27  Ulrich Drepper  <drepper@redhat.com>
3806
3807         * include/stdio.h: Add declarations for __builtin_fwrite and
3808         __builtin_fwrite_unlocked.
3809
3810 2003-08-27  Jakub Jelinek  <jakub@redhat.com>
3811
3812         * sysdeps/unix/opendir.c (__opendir): Make sure even struct dirent64
3813         fits into allocation.  Add padding on 32-bit arches so that
3814         dirp->data is enough aligned for struct dirent64.
3815         Avoid clearing of the buffer, just clear DIR structure.
3816
3817 2003-08-26  Ulrich Drepper  <drepper@redhat.com>
3818
3819         * nss/nsswitch.c: Add libc_hidden_def for __nss_lookup_function.
3820         * nss/nsswitch.h: Add libc_hidden_proto for __nss_lookup_function.
3821
3822 2003-08-26  Steven Munroe  <sjmunroe@us.ibm.com>
3823
3824         * sysdeps/powerpc/powerpc64/elf/Makefile: New file.
3825
3826 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3827
3828         * login/programs/utmpdump.c (print_entry): Cast tv_usec to long
3829         to match format string.
3830         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (union semun): Add
3831         __old_buf.
3832         (__new_semctl): Shut up warning.
3833         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h
3834         (_dl_string_hwcap): Add __attribute__ ((always_inline)).
3835
3836 2003-08-26  Jakub Jelinek  <jakub@redhat.com>
3837
3838         * elf/ldconfig.c (search_dir): When checking for GNU-style .so
3839         link file use the real file name, not the resolved name we got by
3840         following the symlinks.
3841
3842 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3843
3844         * libio/oldfileops.c (_IO_old_file_init): Initialize _mode field
3845         if the object size is large enough.
3846
3847 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3848
3849         * elf/ldconfig.c (search_dir): Treat symlink as regular file
3850         if it won't point to itself unless it is .so symlink for the linker.
3851
3852 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3853
3854         * libio/libio.h (_IO_fwide): In the mode==0 optimization, don't
3855         use _mode if _IO_fwide_maybe_incompatible.
3856         * libio/iofwide.c (_IO_fwide): Move the test for mode == 0 after
3857         the compatibility test.
3858
3859 2003-08-25  Jakub Jelinek  <jakub@redhat.com>
3860
3861         * elf/cache.c (save_cache): Don't write beyond end of file_entries
3862         buffer.
3863         Duplicate last old cache entry if the count would be odd.
3864
3865 2003-08-25  Andreas Jaeger  <aj@suse.de>
3866
3867         * sysdeps/unix/sysv/linux/posix_fadvise64.c: Cast arguments of
3868         __LONG_LONG_PAIR to long.
3869
3870 2003-08-25  Philip Blundell  <philb@gnu.org>
3871
3872         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_ERRVAL): Define.
3873         (PSEUDO_END_ERRVAL, ret_ERRVAL): Likewise.
3874
3875 2003-08-18  Alfred M. Szmidt  <ams@kemisten.nu>
3876
3877         * sysdeps/generic/bits/libc-lock.h (__libc_cleanup_pop): Redefine
3878         and use __libc_cleanup_region_end instead.
3879
3880 2003-08-25  Ulrich Drepper  <drepper@redhat.com>
3881
3882         * elf/ldconfig.c (search_dir): Revert patch of 2003-7-21.
3883
3884 2003-08-22  Ulrich Drepper  <drepper@redhat.com>
3885
3886         * io/fcntl.h (posix_fallocate): Change type of third parameter to
3887         off_t.
3888         (posix_fallocate64): Change type of third parameter to off64_t.
3889         * sysdeps/generic/posix_fallocate.c: Adjust for type change.
3890         * sysdeps/posix/posix_fallocate.c: Likewise.
3891         * sysdeps/generic/posix_fallocate64.c: Likewise.
3892         * sysdeps/posix/posix_fallocate64.c: Likewise.  Add compatibility
3893         code for 32-bit platforms.
3894         * sysdeps/unix/sysv/linux/i386/Versions: Add new version for
3895         posix_fallocate64.
3896         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Likewise.
3897         * sysdeps/unix/sysv/linux/s390/s390-32/Versions: Likewise.
3898         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions: Likewise.
3899
3900 2003-08-19  Ulrich Drepper  <drepper@redhat.com>
3901
3902         * string/bits/string2.h (__STRING2_COPY_TYPE): Add attribute to
3903         the type, not to name.
3904
3905         * stdio-common/test-vfprintf.c (main): Don't write temporary file
3906         into source directory.
3907
3908         * malloc/malloc.c (_int_free): Add cheap test for some invalid
3909         block sizes.
3910
3911         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo in
3912         syscall name.
3913
3914 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3915
3916         * sysdeps/unix/sysv/linux/shm_open.c (shm_open): Fold EISDIR error
3917         into EINVAL.
3918
3919 2003-08-18  H.J. Lu  <hongjiu.lu@intel.com>
3920
3921         * sysdeps/ia64/dl-machine.h (elf_machine_rela): Use _dl_reloc_bad_type.
3922         (elf_machine_lazy_rel): Likewise.
3923
3924 2003-08-18  Art Haas  <ahaas@airmail.net>
3925
3926         * malloc/malloc.h: Remove unneeded ';' where closing the C++
3927         extern block.
3928
3929 2003-08-18  Ulrich Drepper  <drepper@redhat.com>
3930
3931         * sysdeps/ia64/dl-fptr.h (ELF_MACHINE_LOAD_ADDRESS): Support
3932         loading big binaries where @gprel(sym) cannot be handled in 'add'
3933         but instead has to be used with 'movl'.
3934
3935 2003-08-17  Juergen Kreileder <jk@blackdown.de>
3936             Andreas Jaeger  <aj@suse.de>
3937
3938         * sysdeps/x86_64/bits/byteswap.h: New file.
3939
3940 2003-08-17  Andreas Jaeger  <aj@suse.de>
3941
3942         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Fix typo.
3943
3944 2003-08-16  Jakub Jelinek  <jakub@redhat.com>
3945
3946         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_ERRVAL,
3947         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3948         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_ERRVAL,
3949         PSEUDO_RET_ERRVAL, ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3950         * sysdeps/unix/alpha/sysdep.h (PSEUDO_ERRVAL,
3951         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3952         * sysdeps/unix/mips/sysdep.h (PSEUDO_ERRVAL,
3953         ret_ERRVAL, PSEUDO_END_ERRVAL): Define.
3954         * sysdeps/unix/sparc/sysdep.h (PSEUDO_ERRVAL,
3955         ret_ERRVAL): Define.
3956         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_ERRVAL,
3957         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3958         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (PSEUDO_ERRVAL,
3959         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3960         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h (PSEUDO_ERRVAL):
3961         Define.
3962         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_ERRVAL,
3963         PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3964         * sysdeps/unix/sysdep.h (PSEUDO_END_ERRVAL): Define.
3965
3966         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64,
3967         posix_fadvise64_64): Remove.
3968         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64): Add
3969         V flag.
3970         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
3971         Likewise.
3972         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list
3973         (posix_fadvise64): Likewise.
3974         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
3975         (posix_fadvise64): Likewise.
3976         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
3977         (posix_fadvise64): Likewise.
3978         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
3979         Likewise.
3980         * sysdeps/unix/sysv/linux/i386/posix_fadvise64_64.S: Moved to...
3981         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: ...here.
3982         (__posix_fadvise64_l64): Fix a typo in fadvise64 syscall invocation.
3983         (__posix_fadvise64_l32): New function.
3984         * sysdeps/unix/sysv/linux/i386/Makefile: Revert last change.
3985         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions (libc): Export
3986         posix_fadvise64@@GLIBC_2.3.3.
3987         * sysdeps/unix/sysv/linux/s390/s390-32/Versions (libc): Likewise.
3988         * sysdeps/unix/sysv/linux/sparc/sparc32/Versions (libc): Likewise.
3989         * sysdeps/unix/sysv/linux/posix_fadvise.c (posix_fadvise): Return
3990         error value.
3991         * sysdeps/unix/sysv/linux/posix_fadvise64.c: New file.
3992
3993         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h
3994         (SYSCALL_ERROR_HANDLER): Use TLS errno/__libc_errno if USE___THREAD.
3995
3996 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
3997
3998         * sysdeps/sparc/sparc32/dl-machine.h (WEAKADDR): Remove.
3999         (elf_machine_matches_host): Remove weak extern stuff.
4000         Use GL(dl_hwcap) unconditionally and GL(dl_hwcap_mask) if SHARED.
4001         (elf_machine_runtime_setup, sparc_fixup_plt): Remove weak extern
4002         stuff.  Use GL(dl_hwcap) unconditionally.
4003
4004 2003-08-16  Alan Modra  <amodra@bigpond.net.au>
4005
4006         * sysdeps/powerpc/powerpc64/elf/start.S: Add a nop after
4007         __libc_start_main branch.
4008
4009 2003-08-16  Jakub Jelinek <jakub@redhat.com>,
4010             Andreas Jaeger  <aj@suse.de>
4011
4012         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Return ENOSYS
4013         instead of setting errno.
4014         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
4015
4016 2003-08-16  Andreas Jaeger  <aj@suse.de>
4017
4018         * sysdeps/generic/posix_fadvise.c (posix_fadvise): Adjust prototype.
4019         * sysdeps/generic/posix_fadvise64.c (posix_fadvise64): Likewise.
4020
4021 2003-08-15  Ulrich Drepper  <drepper@redhat.com>
4022
4023         * io/fcntl.h (posix_fadvise64): Change type of third parameter to
4024         off_t.
4025         * sysdeps/unix/sysv/linux/posix_fadvise.c: Adjust definition.
4026         * sysdeps/unix/make-syscalls.sh: Recognize V prefix to the parameter
4027         description indicating the error value is returned, not -1.
4028         * sysdeps/unix/sysv/linux/kernel-features.h: Add definition of
4029         __ASSUME_FADVISE64_64_SYSCALL.
4030         * sysdeps/unix/sysv/linux/syscalls.list: Don't define madvise and
4031         posix_madvise in one file.  Have posix_madvise defined with error
4032         value returned.
4033         Define posix_fadvise64_64 entry.  Add version info to posix_fadvise64
4034         entry.
4035         * sysdeps/unix/sysv/linux/i386/posix_fadvise.S: New file.
4036         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define PSEUDO_ERRVAL,
4037         PSEUDO_END_ERRVAL, and ret_ERRVAL.
4038         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
4039         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
4040         * sysdeps/unix/sysv/linux/i386/Versions [GLIBC_2.3.3]: Add
4041         posix_fadvise64.
4042
4043         * posix/Makefile (routines): Add posix_madvise.
4044         * sysdeps/generic/madvise.c: Don't define posix_madvise.
4045         * sysdeps/generic/posix_madvise.c: New file.
4046         * sysdeps/unix/sysv/aix/posix_madvise.c: New file.
4047         * sysdeps/unix/sysv/linux/i386/Makefile [subdir=io] (subdir_routines):
4048         Add posix_fadvise64_64.
4049
4050 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4051
4052         * assert/assert.h (assert_perror): Use __builtin_expect for gcc >=
4053         3.0, not for !gcc or gcc < 3.0.
4054
4055 2003-08-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
4056
4057         * dlfcn/default.c (main): Cast dlsym loaded value to same type as main.
4058         Address passed to test_in_mod1 and test_in_mod2 without casting.
4059         * dlfcn/defaultmod1.c: Change prototype of test_in_mod1.
4060         (test_in_mod1): Cast dlsym loaded value to same type as mainp.
4061         * dlfcn/defaultmod2.c: Change prototype of test_in_mod2.
4062         (test_in_mod2): Cast dlsym loaded value to same type as mainp.
4063
4064 2003-08-15  Jakub Jelinek  <jakub@redhat.com>
4065
4066         * sysdeps/sparc/sparc32/elf/configure.in (libc_cv_sparc32_tls):
4067         Change quotes before using [].
4068
4069         * sysdeps/unix/sysv/linux/sparc/sys/user.h: New file.
4070
4071         * sysdeps/sparc/sparc32/bits/atomic.h (__sparc32_atomic_lock):
4072         Renamed to...
4073         (__sparc32_atomic_locks): ...this.  Change into 64-byte array.
4074         (__sparc32_atomic_do_lock, __sparc32_atomic_do_unlock): Add addr
4075         argument.  Select one of 64 locks from address bits.
4076         (atomic_compare_and_exchange_val_acq,
4077         atomic_compare_and_exchange_bool_acq): Pass memory address to
4078         __sparc32_atomic_do_{,un}lock.
4079
4080 2003-08-14  Ulrich Drepper  <drepper@redhat.com>
4081
4082         * assert/assert.h (assert): Use !! in front of expression to allow
4083         use of pointers.
4084
4085         * iconvdata/cp932.c: Fixed checking of a few border of code areas.
4086         Changed conversion of JIS X 0201 from using a table to calculating.
4087         * iconvdata/euc-jp-ms.c: Fixed conversion table and rewrote
4088         conversion routine.  Changed CHARSET_NAME definition from EUCJP-MS to
4089         EUC-JP-MS.
4090         * iconvdata/tst-tables.sh: Add CP932 and EUC-JP-MS.
4091         * iconvdata/CP932.irreversible: New file.
4092         * iconvdata/EUC-JP-MS.irreversible: New file.
4093         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4094
4095 2003-08-13  Ulrich Drepper  <drepper@redhat.com>
4096
4097         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add time syscall.
4098
4099         * elf/Makefile: Use LC_ALL=C in a few cases where we call external
4100         text processing tools.
4101
4102         * sysdeps/pthread/aio_misc.h (struct waitlist): Don't add caller_pid
4103         element unless BROKEN_THREAD_SIGNALS is defined.
4104         (struct requestlist): Likewise.
4105         * sysdeps/pthread/aio_misc.c (__aio_enqueue_request): Don't fill in
4106         caller_pid of new request unless BROKEN_THREAD_SIGNALS is defined.
4107         * sysdeps/pthread/aio_suspend.c (aio_suspend): Likewise.
4108         * sysdeps/pthread/aio_notify.c (__aio_notify_only): Remove caller_pid
4109         parameter unless BROKEN_THREAD_SIGNALS is defined.  Adjust callers.
4110         Pass current PID to __aio_sigqueue.
4111         * sysdeps/pthread/lio_listio.c (lio_listio): Adjust __aio_notify_only
4112         call.  Don't initialize caller_pid field of waitlist element.
4113
4114 2003-08-12  Jakub Jelinek  <jakub@redhat.com>
4115
4116         * libio/libioP.h (_IO_vtable_offset): Define.
4117         * libio/freopen.c (freopen): Use it.
4118         * libio/ioputs.c (_IO_puts): Likewise.
4119         * libio/freopen64.c (freopen64): Likewise.
4120         * libio/genops.c (__underflow, __uflow, _IO_flush_all_lockp):
4121         Likewise.
4122         * libio/iofclose.c (_IO_new_fclose): Likewise.
4123         * libio/iofputs.c (_IO_fputs): Likewise.
4124         * libio/ioftell.c (_IO_ftell): Likewise.
4125         * libio/iofwrite.c (_IO_fwrite): Likewise.
4126         * libio/ioseekoff.c (_IO_seekoff_unlocked): Likewise.
4127         * libio/iosetbuffer.c (_IO_setbuffer): Likewise.
4128         * stdio-common/vfprintf.c (ORIENT, vfprintf): Likewise.
4129         * stdio-common/vfscanf.c (ORIENT): Likewise.
4130
4131 2003-08-11  Ulrich Drepper  <drepper@redhat.com>
4132
4133         * assert/assert.h: Use __builtin_expect in assert and
4134         assert_perror definitions if possible.
4135
4136 2003-08-07  Jakub Jelinek  <jakub@redhat.com>
4137
4138         * sysdeps/generic/ldsodefs.h (_rtld_global): Add
4139         _dl_rtld_lock_recursive and _dl_rtld_unlock_recursive.
4140         * elf/rtld.c (rtld_lock_default_lock_recursive,
4141         rtld_lock_default_unlock_recursive): New functions.
4142         (dl_main): Initialize _dl_rtld_lock_recursive and
4143         _dl_rtld_unlock_recursive.
4144
4145 2003-08-05  Jakub Jelinek  <jakub@redhat.com>
4146
4147         * elf/ldconfig.c (main): Append SLIBDIR and LIBDIR to
4148         config_file directories instead of prepending.
4149
4150 2003-08-02  Ulrich Drepper  <drepper@redhat.com>
4151
4152         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4153         __ASSUME_CLONE_STOPPED.
4154
4155 2003-08-01  Ulrich Drepper  <drepper@redhat.com>
4156
4157         * sysdeps/generic/bits/libc-lock.h
4158         (__libc_cleanup_push,__libc_cleanup_pop): Define even here.
4159
4160 2003-08-01  Roland McGrath  <roland@frob.com>
4161
4162         * sysdeps/mach/hurd/getdents.c: Just use sysdeps/generic/getdents.c.
4163
4164 2003-07-31  Jakub Jelinek  <jakub@redhat.com>
4165
4166         * sysdeps/generic/bits/types.h (__ssize_t): Use __SSIZE_T_TYPE
4167         instead of __SWORD_TYPE.
4168         * sysdeps/generic/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4169         * sysdeps/mach/hurd/bits/typesizes.h (__SSIZE_T_TYPE): Define.
4170         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h (__SSIZE_T_TYPE):
4171         Define.
4172         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__SSIZE_T_TYPE):
4173         Define.
4174         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__SSIZE_T_TYPE):
4175         Define.
4176         * sysdeps/unix/sysv/linux/s390/bits/typesizes.h: New file.
4177
4178         * dlfcn/dlerror.c (once): New.
4179         (dlerror): Call __libc_once.
4180         (_dlerror_run): Remove once.
4181
4182         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h (struct sigcontext):
4183         Sync with 2.5.7 and 2.5.73 kernel changes.
4184
4185         * dlfcn/eval.c (funcall): Add noinline attribute to shut up warnings.
4186         * elf/rtld.c (dl_main): Cast ElfW(Addr) arguments with %Zx/%Zd
4187         formats to size_t.
4188         * elf/dl-lookup.c (_dl_debug_bindings): Likewise.
4189         * elf/tst-tls6.c (do_test): Use %zd format for l_tls_modid.
4190         * elf/tst-tls8.c (do_test): Use %zd format for modid1 and modid2.
4191         * gmon/tst-sprofil.c (main): Add parens to shut up warning.
4192         * iconv/tst-iconv3.c (main): Use %td instead of %zd for pointer
4193         difference argument.
4194         * stdio-common/tst-wc-printf.c (main): Cast arguments with %C
4195         format to wint_t.
4196         * stdlib/tst-limits.c (main): For WORD_BIT and LONG_BIT, use
4197         %d format and cast expected value to int.
4198         * sysdeps/generic/libc-start.c (STATIC): Add
4199         __attribute__((always_inline) if LIBC_START_MAIN is already defined.
4200         * sysdeps/powerpc/fpu/w_sqrt.c (a_nan, a_inf): Change from uint32_t
4201         to ieee_float_shape_type.
4202         (__sqrt): Avoid type punning.
4203         * sysdeps/powerpc/fpu/w_sqrtf.c (a_nan, a_inf): Change from uint32_t
4204         to ieee_float_shape_type.
4205         (__sqrtf): Avoid type punning.
4206         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): Don't define
4207         refsym if in dl-conflict.c.
4208         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
4209         * sysdeps/unix/sysv/linux/i386/semctl.c (union semun): Add __old_buf.
4210         (__new_semctl): Shut up warning.
4211         * sysdeps/unix/sysv/linux/semctl.c (union semun): Add __old_buf.
4212         (__new_semctl): Shut up warning.
4213         * sysdeps/unix/sysv/linux/shmctl.c (__new_shmctl): Wrap long lines.
4214         Change old into union of __old_shmid_ds and __old_shminfo structs.
4215         Adjust all users.
4216         * wcsmbs/wcsmbs-tst1.c (main): Cast arguments with %C format to wint_t.
4217
4218         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Fix actime and
4219         modtime computation.
4220         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Likewise.
4221         * sysdeps/posix/utimes.c (__utimes): Likewise.
4222
4223 2003-07-30  Jakub Jelinek  <jakub@redhat.com>
4224
4225         * elf/dl-reloc.c (_dl_allocate_static_tls): Don't return any value,
4226         call dl_signal_error directly.  If already relocated, call
4227         GL(dl_init_static_tls) directly, otherwise queue it for later.
4228         (CHECK_STATIC_TLS): Undo 2003-07-24 change.
4229         * elf/rtld.c (dl_main): Initialize GL(dl_init_static_tls).
4230         * elf/dl-open.c (dl_open_worker): Call GL_dl_init_static_tls
4231         for all static TLS initializations delayed in _dl_allocate_static_tls.
4232         * elf/dl-support.c (_dl_init_static_tls): New variable.
4233         * include/link.h (struct link_map): Add l_need_tls_init.
4234         * sysdeps/generic/ldsodefs.h (_rtld_global): Add _dl_init_static_tls.
4235         (_dl_nothread_init_static_tls): New prototype.
4236         (_dl_allocate_static_tls): Adjust prototype.
4237
4238         * elf/tls-macros.h (VAR_INT_DEF): Add alignment directive.
4239
4240 2003-07-31  Alexandre Oliva  <aoliva@redhat.com>
4241
4242         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
4243         elf_machine_rel_relative, elf_machine_rela_relative): Don't assume
4244         reloc_addr is aligned.
4245         * sysdeps/alpha/dl-machine.h (elf_machine_rela,
4246         elf_machine_rela_relative): Adjust.
4247         * sysdeps/arm/dl-machine.h (elf_machine_rel, elf_machine_rela,
4248         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4249         * sysdeps/cris/dl-machine.h (elf_machine_rela,
4250         elf_machine_rela_relative): Adjust.
4251         * sysdeps/hppa/dl-machine.h (elf_machine_rela,
4252         elf_machine_rela_relative): Adjust.
4253         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela,
4254         elf_machine_rel_relative, elf_machine_rela_relative): Adjust.
4255         * sysdeps/ia64/dl-machine.h (elf_machine_rela,
4256         elf_machine_rela_relative): Adjust.
4257         * sysdeps/m68k/dl-machine.h (elf_machine_rela,
4258         elf_machine_rela_relative): Adjust.
4259         * sysdeps/mips/dl-machine.h (elf_machine_rela,
4260         elf_machine_rela_relative): Adjust.
4261         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela,
4262         elf_machine_rela_relative): Adjust.
4263         * sysdeps/powerpc/powerpc64/dl-machine.h
4264         (elf_machine_rela_relative, elf_machine_rela): Adjust.
4265         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela,
4266         elf_machine_rela_relative): Adjust.
4267         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela,
4268         elf_machine_rela_relative): Adjust.
4269         * sysdeps/sh/dl-machine.h (elf_machine_rela,
4270         elf_machine_rela_relative): Adjust.
4271         * sysdeps/sparc/sparc32/dl-machine.h (elf_machine_rela,
4272         elf_machine_rela_relative): Adjust.
4273         * sysdeps/sparc/sparc64/dl-machine.h (elf_machine_rela,
4274         elf_machine_rela_relative): Adjust.
4275         * sysdeps/x86_64/dl-machine.h (elf_machine_rela,
4276         elf_machine_rela_relative): Adjust.
4277
4278 2003-07-29  Ulrich Drepper  <drepper@redhat.com>
4279
4280         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Restore
4281         alignment of TCB used before the last change so that it matches
4282         ld's output for IE code.
4283
4284 2003-07-29  Jakub Jelinek  <jakub@redhat.com>
4285
4286         * include/ctype.h (__ctype_b_loc, __ctype_toupper_loc,
4287         __ctype_tolower_loc): Avoid "dereferencing type-punned pointer will
4288         break strict-aliasing rules" warnings.
4289
4290 2003-07-29  Roland McGrath  <roland@redhat.com>
4291
4292         * elf/Makefile: Revert accidental changes in last commit.
4293         * elf/dl-support.c: Likewise.
4294
4295         * rt/tst-timer2.c: New file.
4296         * rt/Makefile (tests): Add it.
4297
4298 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4299
4300         * elf/dl-support.c (_dl_hwcap): Add nocommon attribute.
4301
4302 2003-07-29  Roland McGrath  <roland@redhat.com>
4303
4304         * elf/Makefile (tests) [$(build-shared) = yes]:
4305         Depend on $(test-modules).
4306         * dlfcn/Makefile: Likewise.
4307
4308 2003-07-28  Roland McGrath  <roland@redhat.com>
4309
4310         * sysdeps/generic/bits/types.h (__STD_TYPE): New macro.
4311         Use that instead of `typedef' when using __*_TYPE macros in rhs.
4312
4313         * elf/tst-tls14.c [USE_TLS && HAVE___THREAD]: Conditionalize on this.
4314         * elf/tst-tlsmod14a.c: Likewise.
4315
4316         * sysdeps/unix/sysv/linux/sys/sysctl.h: Include <linux/compiler.h>
4317         before <linux/sysctl.h>.
4318
4319 2003-07-27  Ulrich Drepper  <drepper@redhat.com>
4320
4321         * sysdeps/unix/sysv/syscalls.list: time syscall never fails.
4322         * sysdeps/unix/sysv/linux/x86_64/time.S: time syscall never fails.
4323         * sysdeps/unix/sysv/i386/time.S: time syscall never fails.
4324         * sysdeps/unix/syscalls.list: umask syscall never fails.
4325
4326 2003-07-27  Andreas Jaeger  <aj@suse.de>
4327
4328         * sysdeps/unix/sysv/linux/init-first.c: Mark init as used.
4329
4330 2003-07-25  Jakub Jelinek  <jakub@redhat.com>
4331
4332         * sysdeps/unix/sysv/linux/a.out.h: Replace with i386 version.
4333         Include bits/a.out.h.
4334         * sysdeps/unix/sysv/linux/Makefile (sysdep_headers): Add
4335         bits/a.out.h.
4336         * sysdeps/unix/sysv/linux/bits/a.out.h: New file.
4337         * sysdeps/unix/sysv/linux/i386/bits/a.out.h: New file.
4338         * sysdeps/unix/sysv/linux/m68k/bits/a.out.h: New file.
4339         * sysdeps/unix/sysv/linux/x86_64/bits/a.out.h: New file.
4340         * sysdeps/unix/sysv/linux/alpha/a.out.h: New file.
4341         * sysdeps/unix/sysv/linux/alpha/bits/a.out.h: New file.
4342         * sysdeps/unix/sysv/linux/sparc/a.out.h: New file.
4343         * sysdeps/unix/sysv/linux/sparc/bits/a.out.h: New file.
4344
4345 2003-07-24  Jakub Jelinek  <jakub@redhat.com>
4346
4347         * sysdeps/pthread/aio_cancel.c (aio_cancel): Return AIO_ALLDONE
4348         if aiocbp != NULL and has already completed.  Return -1/EINVAL if
4349         aiocbp->aio_fildes does not match fildes.
4350
4351 2003-07-24  Ulrich Drepper  <drepper@redhat.com>
4352
4353         * timezone/zic.c (rpytime): Replace cheap overflow check with a
4354         functioning one.
4355
4356         * include/link.h (struct link_map): Add l_tls_firstbyte_offset field.
4357         * sysdeps/generic/dl-tls.c [TLS_TCB_AT_TP] (_dl_determine_tlsoffset):
4358         Fix calculation of offsets to take misalignment of first byte in
4359         file into account.
4360         * elf/dl-load.c (_dl_map_object_from_fd): Initialize
4361         l_tls_firstbyte_offset field.
4362         * elf/rtld.c (_dl_start_final, _dl_start, dl_main): Likewise.
4363         * elf/dl-reloc.c (_dl_allocate_static_tls): Change return type to int.
4364         Take l_tls_firstbyte_offset information into account.
4365         (CHECK_STATIC_TLS): _dl_allocate_static_tls can fail now.
4366         * sysdeps/generic/ldsodefs.h: Adjust _dl_allocate_static_tls prototype.
4367         * elf/Makefile: Add rules to build and run tst-tls14.
4368         * elf/tst-tls14.c: New file.
4369         * elf/tst-tlsmod14a.c: New file.
4370         * elf/tst-tlsmod14b.c: New file.
4371
4372 2003-07-23  Jakub Jelinek  <jakub@redhat.com>
4373
4374         * sysdeps/pthread/lio_listio.c (LIO_OPCODE_BASE): Define.
4375         (lio_listio): Use it.
4376         * sysdeps/pthread/lio_listio64.c: Include lio_listio.c instead of
4377         after few defines to avoid duplication.
4378
4379 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4380
4381         * include/stdio.h (__libc_fatal): Add libc_hidden_proto.
4382         * include/dlfcn.h (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4383         Likewise.
4384         * elf/dl-libc.c (__libc_dlopen_mode, __libc_dlsym, __libc_dlclose):
4385         Add libc_hidden_def.
4386         * sysdeps/generic/libc_fatal.c (__libc_fatal): Likewise.
4387         * sysdeps/posix/libc_fatal.c (__libc_fatal): Likewise.
4388         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Likewise.
4389         * elf/Versions (libc): Export __libc_dlopen_mode@@GLIBC_PRIVATE,
4390         __libc_dlsym@@GLIBC_PRIVATE and __libc_dlclose@@GLIBC_PRIVATE.
4391         * libio/Versions (libc): Export __libc_fatal@@GLIBC_PRIVATE.
4392         * sysdeps/generic/unwind-dw2.c: Readd #ifs removed during last
4393         change.
4394         * sysdeps/generic/unwind.inc: Removed.
4395
4396         * include/resolv.h (__resp): Declare.  Define to __libc_resp
4397         if in libc.so.
4398         (_res): If USE___THREAD, define to (*__resp).
4399         * resolv/res_libc.c (_res): Normal .bss variable with compat_symbol
4400         even if USE___THREAD.
4401         (__resp): New __thread variable.
4402         (__libc_resp): New alias.
4403         * resolv/Versions (libc): Export _res@GLIBC_2.0 even if
4404         USE_TLS && HAVE___THREAD.  Export __resp@@GLIBC_PRIVATE.
4405         * sysdeps/generic/res-state.c (__res_state): Return __resp
4406         if USE___THREAD.
4407
4408 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4409
4410         * elf/dl-support.c (_dl_hwcap): New variable.
4411         (_dl_aux_init): Initialize GL(dl_hwcap) for static binaries.
4412
4413         * sysdeps/i386/fpu/fclrexcpt.c: Include <unistd.h>, <ldsodefs.h>
4414         and <dl-procinfo.h>.
4415         (__feclearexcept): Clear MXCSR if needed.
4416         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
4417
4418         * sysdeps/i386/fpu_control.h (_FPU_GETCW, _FPU_SETCW): Document
4419         that newer hardware needs more than these macros.
4420
4421         * sysdeps/i386/setfpucw.c: New file.
4422
4423 2003-07-22  Jakub Jelinek  <jakub@redhat.com>
4424
4425         * elf/Makefile (CFLAGS-ldconfig.c): Define IS_IN_ldconfig.
4426         * elf/ldconfig.c: Include dl-procinfo.c.
4427         (PROCINFO_CLASS): Define.
4428         * sysdeps/generic/ldsodefs.h (PROCINFO_CLASS): Define.
4429         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: New file.
4430         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.h: New file.
4431         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (PROCINFO_CLASS):
4432         Define if not yet defined.  Use it instead of EXTERN.  Undefine
4433         at the end of the file.
4434         * sysdeps/unix/sysv/linux/arm/dl-procinfo.c (PROCINFO_CLASS):
4435         Likewise.
4436         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.c
4437         (PROCINFO_CLASS): Likewise.
4438         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.c
4439         (PROCINFO_CLASS): Likewise.
4440
4441 2003-07-22  H.J. Lu  <hongjiu.lu@intel.com>
4442
4443         * elf/ldconfig.c (main): Issue a fatal error if relative path
4444         is used to build cache.
4445
4446 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4447
4448         * elf/readlib.c (process_file): Avoid possible overflow in assignment.
4449
4450 2003-07-21  Art Haas  <ahaas@airmail.net>
4451
4452         * manual/charset.texi (Converting a Character): Fix example code so a
4453         valid pointer is returned.
4454
4455 2003-07-22  Andreas Jaeger  <aj@suse.de>
4456
4457         * elf/readlib.c (process_file): Check that file is a shared
4458         object.
4459
4460         * elf/sofini.c (__FRAME_END__): Use attribute used so that gcc
4461         will not optimize it away.
4462         (__DTOR_END__): Likewise.
4463         (__CTOR_END__): Likewise.
4464
4465         * include/libc-symbols.h (_elf_set_element): Use attribute used so
4466         that gcc will not optimize it away.
4467         (link_warning): Likewise.
4468
4469 2003-07-22  Ulrich Drepper  <drepper@redhat.com>
4470
4471         * wcsmbs/wcpncpy.c (__wcpncpy): Correct destination pointer handling.
4472         * wcsmbs/Makefile (tests): Add tst-wcpncpy.
4473         * wcsmbs/tst-wcpncpy.c: New file.
4474
4475 2003-07-21  Ulrich Drepper  <drepper@redhat.com>
4476
4477         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_STOPPED): Define.
4478
4479         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Reverse use of
4480         stmxcsr and ldmxcsr.
4481
4482         * Makerules (build-module-helper): Add -z defs unless explicitly said
4483         not to do it.
4484         * dlfcn/Makefile: Define various *-no-z-defs variables for test DSOs
4485         which has undefined symbols.
4486         * elf/Makefile: Likewise.
4487
4488         * sysdeps/i386/fpu/fedisblxcpt.c: Use dl_hwcap, not dl_hwcap_mask.
4489         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
4490         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
4491         * sysdeps/i386/fpu/fesetround.c: Likewise.
4492         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
4493
4494 2003-07-21  HJ Lu  <hongjiu.lu@intel.com>
4495
4496         * elf/ldconfig.c (search_dir): Treat symlink as regular file
4497         if it won't point to itself.
4498
4499 2003-07-20  Ulrich Drepper  <drepper@redhat.com>
4500
4501         * sysdeps/ia64/hp-timing.h (REPEAT_READ): Cast to long int not to int.
4502
4503 2003-07-20  Andreas Jaeger  <aj@suse.de>
4504
4505         * iconvdata/cp932.c (BODY): STANDARD_ERR_HANDLER is now called
4506         STANDARD_TO_LOOP_ERR_HANDLER.
4507         * iconvdata/euc-jp-ms.c (BODY): Likewise.
4508
4509 2003-07-19  Ulrich Drepper  <drepper@redhat.com>
4510
4511         * sysdeps/unix/sysv/linux/bits/sched.h (__CPU_ZERO): Fix typo.
4512
4513         * sysdeps/unix/sysv/linux/syscalls.list: Remove affinity syscalls.
4514
4515 2003-07-16  Daniel Jacobowitz  <drow@mvista.com>
4516             Andreas Jaeger  <aj@suse.de>
4517
4518         * sysdeps/unix/sysv/linux/mips/bits/shm.h (SHMLBA): Define to
4519         256K, remove unneeded declaration of __getpagesize.
4520
4521 2003-07-16  Andreas Schwab  <schwab@suse.de>
4522
4523         * sysdeps/unix/sysv/linux/futimes.c: Include <string.h>.
4524
4525 2003-07-15  Ulrich Drepper  <drepper@redhat.com>
4526
4527         * io/test-utime.c (main): Make test yet more robust.
4528
4529 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4530
4531         More cancellation handling fixups.
4532         * sysdeps/unix/sysv/linux/not-cancel.h: Add waitpid_not_cancel.
4533         * sysdeps/generic/not-cancel.h: Likewise.
4534         * catgets/open_catalog.c: Use not-cancelable syscalls.
4535         * time/Makefile (CFLAGS-getdate.c): Add -fexceptions.
4536         * sysdeps/unix/sysv/linux/llseek.c: Must not be cancelable.
4537         * sysdeps/unix/syscalls.list: Don't mark lseek as cancelable.
4538         * dlfcn/dlfcn.h: Mark dlopen with __THROW again.
4539         * io/fcntl.h: Don't mark posix_fallocate with __THROW.
4540         * libio/fileops.c: Use not-cancelable syscalls for fclose.
4541         * libio/iopopen.c: Use no-cancelable syscalls.
4542         * libio/stdio.h: Mark popen and pclose with __THROW again.
4543         * misc/Makefile (CFLAGS-syslog.c): Add -fexceptions.
4544         * misc/syslog.c: Fix locking and cancellation cleanup handling.
4545         * posix/unistd.h: Mark ttyname and ttyname_r again with __THROW.
4546         * stdio-common/Makefile (CFLAGS-tmpfile.c, CFLAGS-tmpfile64.c,
4547         CFLAGS-tempname.c): Add -fexceptions.
4548         * stdlib/Makefile (CFLAGS-mkstemp.c): Add -fexceptions.
4549         * string/string.h: Mark strerror and strerror_r with _THROW again.
4550         * sysdeps/generic/unwind.inc: New file.  Copied from gcc.
4551         * sysdeps/generic/unwind-dw2.c: Update from gcc version.  Remove
4552         #ifs since we now need all the code compiled.
4553         * sysdeps/posix/spawni.c: Use close_not_cancel instead of close.
4554         * sysdeps/unix/closedir.c: Use not-cancelable syscalls.
4555         * sysdeps/unix/opendir.c: Likewise.
4556
4557         * iconvdata/Makefile (modules): Add CP932 and EUC-JP-MS.
4558         Add rule for EUC-JP-MS dependency.
4559         * iconvdata/cp932.c: New file.
4560         * iconvdata/eucjp-ms.c: New file.
4561         * iconvdata/gconv-modules: Add entries for CP932 and EUC-JP-MS.
4562         Patch by MORIYAMA Masayuki <msyk@mtg.biglobe.ne.jp>.
4563
4564 2003-07-15  Jakub Jelinek  <jakub@redhat.com>
4565
4566         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket): Add
4567         cfi directives.
4568
4569 2003-07-14  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
4570
4571         * sysdeps/unix/sysv/linux/kernel-features.h
4572         (__ASSUME_FIXED_CLONE_SYSCALL): New macro.
4573         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Use it.
4574
4575         * sysdeps/unix/sysv/linux/utimes.c: Include sysdep.h.
4576
4577 2003-07-14  Ulrich Drepper  <drepper@redhat.com>
4578
4579         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4580         __ASSUME_TGKILL for Alpha appropriately.
4581
4582 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4583
4584         * sysdeps/unix/sysv/linux/bits/statfs.h (_STATFS_F_FRSIZE): Define.
4585         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h (_STATFS_F_FRSIZE):
4586         Likewise.
4587         * sysdeps/unix/sysv/linux/s390/bits/statfs.h (_STATFS_F_FRSIZE):
4588         Likewise.
4589
4590         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4591         __ASSUME_UTIMES for x86 and kernels > 2.5.75.
4592
4593         * sysdeps/unix/sysv/linux/futimes.c (__futimes): Handle case with
4594         second parameter == NULL.
4595         * sysdeps/unix/sysv/linux/utimes.c: New file.
4596
4597 2003-07-12  Jakub Jelinek  <jakub@redhat.com>
4598
4599         * sysdeps/unix/sysv/linux/futimes.c: Include kernel-features.h.
4600         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_UTIMES): Fix
4601         a typo.
4602
4603 2003-07-12  Ulrich Drepper  <drepper@redhat.com>
4604
4605         * time/sys/time.h: Namespace cleanup.
4606         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4607         __ASSUME_UTIMES for the architectures which always had the syscall.
4608         * sysdeps/unix/sysv/linux/futimes.c: New file.
4609
4610 2003-07-12  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
4611
4612         * sysdeps/unix/sysv/linux/sh/socket.S: Save and restore the PR
4613         register across CENABLE and CDISABLE.
4614
4615 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4616
4617         * sysdeps/unix/sysv/linux/sigwait.c: Include string.h.
4618         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4619         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4620         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Cast value to unsigned
4621         int before assigning to max to avoid warnings.
4622
4623 2003-07-11  Jakub Jelinek  <jakub@redhat.com>
4624
4625         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S (__socket): Add
4626         cfi directives.
4627         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Likewise.
4628         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
4629
4630 2003-07-10  Jakub Jelinek  <jakub@redhat.com>
4631
4632         * sysdeps/powerpc/powerpc64/elf/start.S: Set section flags of
4633         .data.rel.ro.local to "aw".
4634
4635 2003-07-10  Ulrich Drepper  <drepper@redhat.com>
4636
4637         * sysdeps/m68k/Makefile: Remove CLFAGS-.oS addition.
4638         * Makeconfig (CFLAGS-.oS): Use PIC-ccflag instead of pic-ccflag.
4639         (PIC-ccflag): Define.
4640
4641 2003-07-04  Jakub Jelinek  <jakub@redhat.com>
4642
4643         * sysdeps/s390/s390-32/elf/start.S: Emit position independent code
4644         if PIC.
4645         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4646
4647 2003-07-07  Jakub Jelinek  <jakub@redhat.com>
4648
4649         * sysdeps/powerpc/powerpc64/elf/start.S: Put L(start_address)
4650         into .data.rel.ro.local section if PIC to avoid DT_TEXTREL.
4651
4652 2003-07-07  Ulrich Drepper  <drepper@redhat.com>
4653
4654         * sysdeps/unix/sysv/linux/kernel-features.h: Version
4655         __ASSUME_CORRECT_SI_PID and __ASSUME_TGKILL if possible.
4656
4657         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Adjust for
4658         compilation with HAVE_AUX_SECURE defined.
4659
4660 2003-07-05  Richard Henderson  <rth@redhat.com>
4661
4662         * sysdeps/alpha/elf/initfini.c: Avoid .ent/.end.
4663
4664 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4665
4666         * configure.in: Also check for .cfi_rel_offset pseudo-op.
4667
4668 2003-07-03  Jakub Jelinek  <jakub@redhat.com>
4669
4670         * sysdeps/unix/sysv/linux/prof-freq.c (__profile_frequency): Fix a
4671         typo.
4672
4673 2003-07-03  Ulrich Drepper  <drepper@redhat.com>
4674
4675         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_AT_CLKTCK):
4676         Define.
4677         * sysdeps/unix/sysv/linux/prof-freq.h: New file.
4678
4679 2003-07-02  Jakub Jelinek  <jakub@redhat.com>
4680
4681         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Protect new_sysinfo
4682         decl and use with #ifdef NEED_DL_SYSINFO.
4683
4684 2003-07-02  Ulrich Drepper  <drepper@redhat.com>
4685
4686         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't set
4687         GL(dl_sysinfo) unles GL(dl_sysinfo_dso) is also set.
4688         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4689         __ASSUME_VSYSCALL only for 2.5.69 and up since this is when the
4690         vsyscall DSO was added.
4691
4692         * posix/bits/posix1_lim.h (_POSIX_NGROUPS_MAX): Define to 8 or 0
4693         depending on selected standard.
4694         (NGROUPS_MAX): Define to 8 if not defined.
4695
4696 2003-07-02  Andreas Jaeger  <aj@suse.de>
4697
4698         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: New file.
4699
4700 2003-05-04  H.J. Lu  <hongjiu.lu@intel.com>
4701
4702         * malloc/arena.c (arena_get2): Add atomic_write_barrier.
4703         * malloc/thread-m.h: Include <atomic.h>.
4704         (atomic_full_barrier): Provide default.
4705         (atomic_read_barrier): Likewise.
4706         (atomic_write_barrier): Likewise.
4707         * sysdeps/ia64/bits/atomic.h (atomic_full_barrier): New #define.
4708
4709 2003-06-30  Ulrich Drepper  <drepper@redhat.com>
4710
4711         * sysdeps/generic/sysdep.h: Define cfi_rel_offset and CFI_REL_OFFSET.
4712
4713 2003-06-30  Richard Henderson  <rth@redhat.com>
4714
4715         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_bool_*_int):
4716         Invert the sense of the return value.
4717         (__arch_exchange_16_int): Fix paste-o.
4718         (__arch_exchange_{32,64}_int): Fix think-o.
4719
4720         * sysdeps/unix/sysv/linux/alpha/clone.S: Load child_tid properly.
4721
4722 2003-06-30  Richard Henderson  <rth@redhat.com>
4723
4724         * include/sys/resource.h (__getrusage): Mark hidden.
4725         * include/sys/time.h (__settimeofday, __setitimer, __utimes): Likewise.
4726         * include/sys/wait.h (__wait4): Likewise.
4727
4728 2003-06-17  Guido Guenther  <agx@sigxcpu.org>
4729
4730         * sysdeps/unix/sysv/linux/mips/xstatconv.c: Handle STAT_IS_KERNEL_STAT
4731         case.
4732         (xstat_conv): Rename to __xstat_conv and remove static inline.
4733         (xstat64_conv): Likewise.
4734
4735 2003-06-29  Ulrich Drepper  <drepper@redhat.com>
4736
4737         * sysdeps/unix/sysv/linux/sleep.c (__sleep): Handle parameter
4738         values which cannot be handled in one nanosleep call.
4739
4740 2003-06-25  Alfred M. Szmidt  <ams@kemisten.nu>
4741
4742         * sysdeps/generic/bits/in.h (IPV6_HOPOPTS, IPV6_DSTOPTS): New macros.
4743         (IPV6_RXHOPOPTS, IPV6_RXDSTOPTS): Use them.
4744
4745         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: Typo fix.
4746
4747 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
4748
4749         * sysdeps/unix/sysv/linux/net/if_arp.h: Sync with kernel header,
4750         fix typo.
4751
4752 2003-06-26  Steven Munroe  <sjmunroe@us.ibm.com>
4753
4754         * sysdeps/unix/sysv/linux/xstatconv.h [!STAT_IS_KERNEL_STAT]:
4755         Conditionalize function definitions that use struct kernel_stat.
4756         * sysdeps/unix/sysv/linux/fxstat.c: Remove __syscall_fstat extern.
4757         * sysdeps/unix/sysv/linux/lxstat.c: Remove __syscall_lstat extern.
4758         * sysdeps/unix/sysv/linux/xstat.c: Remove __syscall_stat extern.
4759
4760 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4761
4762         * sysdeps/unix/sysv/linux/s390/semtimedop.c (semtimedop): Add real
4763         implementation.
4764
4765 2003-06-07  Thorsten Kukuk  <kukuk@suse.de>
4766
4767         * nis/nss_compat/compat-grp.c: Remove unused nis_first variable.
4768         (getgrent_next_file): Don't store group name to early in blacklist.
4769
4770         * nis/nss_compat/compat-pwd.c (internal_getpwuid_r): Save strlen result
4771         and use memcpy instead of strcpy.
4772
4773 2003-06-28  Ulrich Drepper  <drepper@redhat.com>
4774
4775         * nis/nss_compat/compat-grp.c: Optimize several little things.  Use
4776         stream unlocked.
4777         * nis/nss_compat/compat-initgroups.c: Likewise.
4778         * nis/nss_compat/compat-pwd.c: Likewise.
4779         * nis/nss_compat/compat-spwd.c: Likewise.
4780
4781 2003-06-27  Thorsten Kukuk  <kukuk@suse.de>
4782
4783         * nis/nss_compat/compat-initgroups.c: Don't use our own NIS/NIS+
4784         functions, dlopen corresponding NSS module instead.
4785
4786 2003-06-27  Jeroen Dekkers  <jeroen@dekkers.cx>
4787
4788         * sysdeps/mach/hurd/alpha/init-first.c: Remove call to __libc_init.
4789         * sysdeps/mach/hurd/i386/init-first.c: Likewise.
4790         * sysdeps/mach/hurd/mips/init-first.c: Likewise.
4791         * sysdeps/mach/hurd/powerpc/init-first.c: Likewise.
4792
4793 2003-06-27  Ulrich Drepper  <drepper@redhat.com>
4794
4795         * rt/Makefile (CFLAGS-librt-cancellation.c): Define.
4796
4797 2003-06-26  Roland McGrath  <roland@frob.com>
4798
4799         * sysdeps/mach/configure.in: Barf rather than define NO_CREATION_TIME.
4800         * sysdeps/mach/configure: Regenerated.
4801         * sysdeps/mach/hurd/times.c (times_init): Function removed.
4802         (__times): Assume `creation_time' field is available.
4803         * sysdeps/mach/hurd/Makefile [$(subdir) = csu] (sysdep_routines):
4804         Don't append set-init.
4805         * sysdeps/mach/hurd/set-init.c: File removed.
4806
4807 2003-06-26  Roland McGrath  <roland@redhat.com>
4808
4809         * elf/elf.h (AT_SECURE): New macro.
4810         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Grok it,
4811         set __libc_enable_secure.
4812         (_dl_show_auxv): Add AT_SECURE to name table.
4813         * elf/dl-support.c (_dl_aux_init): Grok AT_SECURE, set
4814         __libc_enable_secure and __libc_enable_secure_decided.
4815         * sysdeps/unix/sysv/linux/ldsodefs.h
4816         [__ASSUME_AT_SECURE] (HAVE_AUX_SECURE): Define it.
4817         * sysdeps/unix/sysv/linux/kernel-features.h
4818         [__LINUX_KERNEL_VERSION >= 132426] (__ASSUME_AT_SECURE): Define it.
4819
4820 2003-06-26  Ulrich Drepper  <drepper@redhat.com>
4821
4822         * io/test-utime.c: If _STATBUF_ST_NSEC is defined, adjust lower
4823         boundary test to take rounding of nanoseconds into account.
4824
4825         * sysdeps/unix/sysv/linux/bits/stat.h: Define _STATBUF_ST_NSEC.
4826         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
4827         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Likewise.
4828         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
4829         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
4830         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
4831         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Likewise.
4832
4833 2003-06-26  Andreas Schwab  <schwab@suse.de>
4834
4835         * sysdeps/m68k/fpu/bits/mathinline.h: Don't inline frexp.
4836         * sysdeps/m68k/fpu/s_frexp.c: Put implementation here.
4837         * sysdeps/m68k/fpu/s_frexpl.c: Fix to handle unnormalized numbers.
4838
4839 2003-06-17  Thorsten Kukuk  <kukuk@suse.de>
4840
4841         * nis/Makefile: Remove NIS/NIS+ files from nss_compat module.
4842         * nis/nss_compat/compat-grp.c: Don't use our own NIS/NIS+ functions,
4843         dlopen corresponding NSS module instead.
4844         * nis/nss_compat/compat-pwd.c: Likewise.
4845         * nis/nss_compat/compat-spwd.c: Likewise.
4846         * nis/nss_compat/compat-initgroups.c: Disabled for now.
4847         * nss/Versions: Export __nss_lookup_function.
4848
4849 2003-06-19  Daniel Jacobowitz  <drow@mvista.com>
4850
4851         * sysdeps/unix/sysv/linux/kernel-features.h: Update kernel features
4852         for the SH architecture.
4853
4854 2003-06-25  Thorsten Kukuk  <kukuk@suse.de>
4855
4856         * csu/Makefile: Use CPPFLAGS to find correct linux/version.h.
4857
4858 2003-06-25  Andreas Jaeger  <aj@suse.de>
4859
4860         * stdlib/tst-strtod.c (main): Declare constant long double as
4861         suggested by Jakub Jelinek and Andreas Schwab.
4862
4863         * posix/tst-nanosleep.c: Include <time.h> for nanosleep
4864         declaration.
4865
4866         * stdio-common/tst-fphex.c: Fix format string.
4867
4868         * posix/transbug.c: Include <string.h> for memset and strlen
4869         declarations.
4870
4871         * stdio-common/tst-sprintf.c: Include <stdlib.h> for free declaration.
4872
4873         * stdlib/tst-strtod.c (main): Pass long double value.
4874
4875         * test-skeleton.c: Include <time.h> for nanosleep declaration.
4876
4877 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4878
4879         * include/time.h: Don't define CLOCK_IDFIELD_SIZE if _ISOMAC is
4880         defined.
4881
4882 2003-06-11  Jakub Jelinek  <jakub@redhat.com>
4883
4884         * elf/Versions (libc): Add _dl_open_hook@GLIBC_PRIVATE.
4885         * elf/dl-libc.c (struct dl_open_hook): New.
4886         (_dl_open_hook): New variable.
4887         (do_dlsym_private): New function.
4888         (__libc_dlopen_mode) [!SHARED]: Lookup _dl_open_hook@GLIBC_PRIVATE
4889         and initialize it if found.
4890         (__libc_dlopen_mode) [SHARED]: If _dl_open_hook is non-NULL,
4891         call dlopen_mode hook.
4892         (__libc_dlsym) [SHARED]: If _dl_open_hook is non-NULL,
4893         call dlsym hook.
4894         (__libc_dlclose) [SHARED]: If _dl_open_hook is non-NULL,
4895         call dlclose hook.
4896
4897 2003-06-25  Ulrich Drepper  <drepper@redhat.com>
4898
4899         * sysdeps/unix/sysv/linux/cris/sysdep.h (INLINE_SYSCALL): Cast
4900         result to long int so that extensions to long long int work.
4901         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
4902
4903 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4904
4905         * elf/ldconfig.c (main): Use add_system_dir instead of add_dir.
4906         * sysdeps/generic/dl-cache.h (add_system_dir): Define.
4907         * sysdeps/unix/sysv/linux/x86_64/dl-cache.h: Include sparc
4908         dl-cache.h.
4909         * sysdeps/unix/sysv/linux/s390/dl-cache.h: New file.
4910         * sysdeps/unix/sysv/linux/mips/dl-cache.h: New file.
4911         * sysdeps/unix/sysv/linux/powerpc/dl-cache.h: New file.
4912         * sysdeps/unix/sysv/linux/sparc/dl-cache.h: New file.
4913
4914 2003-06-19  Jakub Jelinek  <jakub@redhat.com>
4915
4916         * test-skeleton.c (timeout_handler): If waitpid returned 0,
4917         retry once after a second.  If killed == 0, assume
4918         WTERMSIG (status) == SIGKILL.
4919
4920 2003-06-18  Roland McGrath  <roland@redhat.com>
4921
4922         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Catch uninitialized
4923         elements in the table instead of printing an empty name string.
4924
4925 2003-06-05  Roland McGrath  <roland@redhat.com>
4926
4927         * elf/elf.h (PT_GNU_STACK): New macro.
4928
4929 2003-06-24  Ulrich Drepper  <drepper@redhat.com>
4930
4931         * include/time.h: Define CLOCK_IDFIELD_SIZE.
4932         * sysdeps/posix/clock_getres.c: Recognize thread CPU clock IDs.
4933         * sysdeps/unix/clock_gettime.c: Likewise.
4934         * sysdeps/unix/clock_settime.c: Likewise.
4935         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Adjust for new
4936         clock id for thread CPU clocks.
4937
4938         * sysdeps/unix/sysv/linux/fstatfs64.c (__fstatfs64): Add support
4939         for the fstatfs64 syscall.
4940         * sysdeps/unix/sysv/linux/statfs64.c (__statfs64): Add support for
4941         the statfs64 syscall.
4942
4943         * sysdeps/unix/sysv/linux/kernel-features.h: Define
4944         __ASSUME_STATFS64 appropriately.
4945
4946         * sysdeps/unix/sysv/linux/internal_statvfs.c: Use f_frsize field
4947         from statfs structure if it has been filled in.
4948
4949         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_frsize
4950         field.
4951         (struct statfs64): Likewise.
4952         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: Likewise.
4953         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
4954
4955 2003-06-24  Richard Henderson  <rth@redhat.com>
4956
4957         * sysdeps/unix/sysv/linux/alpha/syscalls.list (pread, pwrite): Use
4958         the 64-bit syscall name.
4959
4960         * sysdeps/alpha/setjmp.S (_setjmp, setjmp): Mark .prologue.
4961
4962         * sysdeps/alpha/fpu/bits/mathinline.h: Honor
4963         __LIBC_INTERNAL_MATH_INLINES.  Implement __signbitf, __signbit.
4964
4965         * sysdeps/unix/sysv/linux/alpha/clone.S: Use HIDDEN_JUMPTARGET.
4966         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Use
4967         libc_hidden_def.
4968         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4969         * sysdeps/unix/sysv/linux/alpha/setfpucw.c: Use libc_hidden_proto
4970         on them.
4971
4972         * sysdeps/alpha/bits/atomic.h: New file.
4973
4974 2003-06-24  Andreas Schwab  <schwab@suse.de>
4975
4976         * sysdeps/m68k/fpu/libm-test-ulps: Update.
4977
4978 2003-06-24  Andreas Jaeger  <aj@suse.de>
4979
4980         * sysdeps/unix/sysv/linux/x86_64/stat.h (_STAT_VER_LINUX): Avoid
4981         redeclaration with 32-bit code.
4982
4983 2003-05-19  Ed Connell  <ed.connell@sas.com>
4984
4985         * sysdeps/unix/sysv/linux/i386/getcontext.S (getcontext): Retain
4986         floating point mask.
4987         * sysdeps/i386/fpu/fegetenv.c (fegetenv): Likewise.
4988
4989 2003-06-23  Ulrich Drepper  <drepper@redhat.com>
4990
4991         * sysdeps/pthread/aio_misc.h: Mark __aio_requests_mutex,
4992         __aio_enqueue_request, __aio_find_req, __aio_find_req_fd,
4993         __aio_free_request, __aio_notify, and __aio_sigqueue as hidden.
4994
4995         * sysdeps/pthread/aio_suspend.c (aio_suspend): Set errno to the result
4996         of pthread_cond_wait if there was an error.  Use pthread_cleanup_*
4997         instead of __libc_cleanup_region_*.
4998
4999 2003-06-20  Richard Henderson  <rth@redhat.com>
5000
5001         * sysdeps/unix/make-syscalls.sh: Implement ! prefix for strong aliases.
5002         * sysdeps/unix/sysv/linux/alpha/syscalls.list (open, open64): New.
5003
5004 2003-06-20  Richard Henderson  <rth@redhat.com>
5005
5006         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL1): Use __builtin_expect.
5007         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_ST_INO_64_BIT)
5008         Unset for alpha.
5009         (__ASSUME_TIMEVAL64): Set for alpha.
5010         * sysdeps/unix/sysv/linux/alpha/Makefile (sysdep_routines): Remove
5011         adjtimex, osf_sigprocmask, old_adjtimex.
5012         * sysdeps/unix/sysv/linux/alpha/adjtime.c: Use INLINE_SYSCALL,
5013         __ASSUME_TIMEVAL64.  Reorg tv64 functions to avoid uninit variable.
5014         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Use __ASSUME_TIMEVAL64.
5015         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
5016         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
5017         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
5018         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
5019         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
5020         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
5021         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
5022         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Streamline
5023         PIC code sequence.
5024         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
5025         * sysdeps/unix/sysv/linux/alpha/sigaction.c: New file.
5026         * sysdeps/unix/sysv/linux/alpha/sigprocmask.c: Use INLINE_SYSCALL.
5027         * sysdeps/unix/sysv/linux/alpha/ustat.c: Likewise.
5028         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Likewise.
5029         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove osf_sigprocmask,
5030         sys_ustat, sys_mknod, adjtimex, old_adjtimex.
5031         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INLINE_SYSCALL): Don't
5032         defer to __syscall_name; error for rt_sigaction.
5033         * sysdeps/unix/sysv/linux/alpha/xstatconv.c: Include kernel_stat.h.
5034
5035 2003-06-18  Ulrich Drepper  <drepper@redhat.com>
5036
5037         * malloc/malloc.c (public_mALLINFo): Initialize malloc if it
5038         hasn't happened yet.
5039
5040         * sysdeps/unix/sysv/linux/x86_64/register-dump.h (register_dump):
5041         Fix completely broken implementation.  The second parameter is of
5042         type struct ucontext*.
5043
5044         * sysdeps/x86_64/dl-machine.h (elf_machine_runtime_setup): Always
5045         inline.
5046
5047         * sysdeps/i386/i686/dl-hash.h: Don't inline _dl_elf_hash.
5048         * sysdeps/generic/dl-hash.h: Likewise.
5049
5050         * sysdeps/generic/memcmp.c: Remove inline from
5051         memcmp_common_alignment and memcmp_not_common_alignment definition.
5052
5053         * intl/localealias.c (read_alias_file): Determine whether line is
5054         read incompletely early, before we modify the line.
5055
5056 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5057
5058         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela)
5059         <case R_PPC64_DTPREL64>: Don't segfault on undefined symbols.
5060
5061 2003-06-17  Paul Mackerras  <paulus@samba.org>
5062
5063         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: New file.
5064         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: New file.
5065         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: New file.
5066         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: New file.
5067         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: New file.
5068         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Adjust.
5069
5070 2003-06-17  Jakub Jelinek  <jakub@redhat.com>
5071
5072         * posix/regcomp.c (build_word_op): Use alnum instead of alpha class.
5073
5074 2003-06-17  Ulrich Drepper  <drepper@redhat.com>
5075
5076         * sysdeps/unix/clock_nanosleep.c (clock_nanosleep): nanosleep
5077         takes care of enabling cancellation.
5078
5079         * sysdeps/pthread/aio_suspend.c (aio_suspend): Make aio_suspend
5080         cancelable.  It's not correct to disable cancellation.  Instead of
5081         a cleanup handler.
5082
5083         * sysdeps/unix/sysv/linux/sigtimedwait.c: If SIGCANCEL is defined
5084         and part of the incoming set, create a temporary set without this
5085         signal.
5086         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
5087         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
5088
5089         * sysdeps/unix/sysv/linux/sleep.c: Use CANCELLATION_P if defined before
5090         returning because seconds==0.  Add __builtin_expect.
5091
5092 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5093
5094         * sysdeps/unix/sysv/linux/i386/socket.S: Add unwind information.
5095
5096         * sysdeps/unix/sysv/linux/wait.c (__libc_wait): Fix type of result
5097         variable.
5098
5099 2003-06-16  Thorsten Kukuk  <kukuk@suse.de>
5100
5101         * include/libc-symbols.h: Add static_link_warning macro.
5102         * grp/initgroups.c: Print linker warning if this function
5103         is called in a static linked binary.
5104         * nss/getXXbyYY.c: Likewise.
5105         * nss/getXXbyYY_r.c: Likewise.
5106         * nss/getXXent.c: Likewise.
5107         * nss/getXXent_r.c: Likewise.
5108         * sysdeps/posix/getaddrinfo.c: Likewise.
5109
5110 2003-06-16  Bruno Haible  <bruno@clisp.org>
5111
5112         * iconvdata/gconv-modules (ISO-8859-15): Add aliases ISO_8859-15,
5113         LATIN-9.
5114         (ISO-8859-16): Add aliases ISO_8859-16:2001, ISO_8859-16.
5115         (IBM1047): Add alias IBM-1047.
5116         (GBK): Add aliases MS936, WINDOWS-936.
5117
5118 2003-06-16  Jakub Jelinek  <jakub@redhat.com>
5119
5120         * sysdeps/unix/sysv/linux/xstatconv.c (__xstat_conv): Define even if
5121         defined __ASSUME_STAT64_SYSCALL && defined XSTAT_IS_XSTAT64.
5122         (__xstat64_conv): Change xstat_conv to __xstat_conv.
5123
5124 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5125
5126         * locale/iso-639.def: Update from current official ISO 639.
5127
5128         * math/tgmath.h (__TGMATH_UNARY_IMAG_ONLY): Removed.
5129
5130 2003-06-15  Andreas Jaeger  <aj@suse.de>
5131
5132         * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Correct setting
5133         of MXCSR.
5134         * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Likewise.
5135         * sysdeps/i386/fpu/feholdexcpt.c (feholdexcept): Likewise.
5136         Reported by Arnaud Desitter <arnaud.desitter@geography.oxford.ac.uk>.
5137
5138         * math/tgmath.h (carg): Handle real arguments.
5139         (conj): Likewise.
5140         (cproj): Likewise.
5141         (cimag): Likewise.
5142         (creal): Likewise.
5143
5144         * math/Makefile (CFLAGS-test-tgmath-ret.c): New.
5145         (tests): Add test-tgmath-ret.
5146         * math/test-tgmath-ret.c: New file.
5147
5148         * math/tgmath.h (ilogb): Return always an int.
5149
5150 2003-06-16  Ulrich Drepper  <drepper@redhat.com>
5151
5152         * elf/rtld.c (dl_main): Use l_map_start not l_addr in Phdr
5153         computation so that prelinking works.
5154
5155 2003-06-15  Ulrich Drepper  <drepper@redhat.com>
5156
5157         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Don't skip dynamic
5158         linker's map.
5159         * elf/rtld.c (dl_main): Initialize l_phdr and l_phnum of of the
5160         dynamic linker's map.
5161
5162         Fix cancellation point handling wrt exception based cleanup.
5163         * io/Makefile: Compile fcntl.c, poll.c, and lockf.c with exceptions.
5164         * misc/Makefile: Compile pselect.c, readv.c, writev.c, and usleep.c
5165         with exceptions.
5166         * posix/Makefile: Compile pread.c, pread64.c, pwrite.c, pwrite64.c,
5167         sleep.c, wait.c, waitid.c, and waitpid.c with exceptions.
5168         * rt/Makefile: Compile aio_suspend.c and clock_nanosleep.c with
5169         exceptions.
5170         * signal/Makefile: Compile sigpause.c, sigsuspend.c, sigtimedwait.c,
5171         sigwait.c, and sigwaitinfo.c with exceptions.
5172         * stdlib/Makefile: Compile system.c with exceptions.
5173         * sysvipc/Makefile: Compile msgrcv.c and msgsnd.c with exceptions.
5174         * termios/Makefile: Compile tcdrain.c with exceptions.
5175         * sysdeps/generic/lockf.c: Add comment explaining the cancellation
5176         situation.
5177         * sysdeps/generic/pselect.c: Likewise.
5178         * sysdeps/posix/sigpause.c: Likewise.
5179         * sysdeps/posix/system.c: Likewise.
5180         * sysdeps/posix/waitid.c: Likewise.
5181         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
5182         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
5183         * sysdeps/unix/sysv/linux/i386/sysdep.h: Major rewrite of
5184         INTERNAL_SYSCALL to not use push inside asm statement so that
5185         unwind info is correct around the syscall.
5186         * sysdeps/unix/clock_nanosleep.c: Add cancellation support.
5187         * sysdeps/unix/sysv/linux/clock_nanosleep.c: Likewise.
5188
5189 2003-06-15  Andreas Jaeger  <aj@suse.de>
5190
5191         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5192         Add CFI directives.
5193
5194 2003-06-15  Guido Guenther  <agx@sigxcpu.org>
5195
5196         * sysdeps/unix/sysv/linux/mips/Makefile: Add missing endif and
5197         create $(objpfx).
5198
5199 2003-06-14  Ulrich Drepper  <drepper@redhat.com>
5200
5201         * sysdeps/unix/sysv/linux/check_pf.c (__check_pf): Use __close,
5202         not close.
5203
5204         * inet/inet6_option.c (inet6_option_alloc): Add libc_hidden_def.
5205         * include/netinet/in.h (inet6_option_alloc): Add libc_hidden_proto
5206         definition.
5207
5208         * inet/netinet/ip6.h (IP6OPT_PAD1, IP6OPT_PADN): Define.
5209         * inet/netinet/in.h: Add prototypes for inet6_option_* functions.
5210         * inet/Makefile (routines): Add inet6_option.
5211         * inet/inet6_option.c: New file.
5212         * inet/Versions [GLIBC_2.3.3] (libc): Add inet6_option_space,
5213         inet6_option_init, inet6_option_append, inet6_option_alloc,
5214         inet6_option_next, and inet6_option_find.
5215
5216 2003-06-13  Ulrich Drepper  <drepper@redhat.com>
5217
5218         * inet/netinet/ip6.h (struct ip6_ext): Define.
5219
5220         * sysdeps/unix/sysv/linux/sys/param.h (howmany): Optimize for gcc.
5221
5222         Fixing gcc 3.3 warnings, part II.
5223         * argp/argp-help.c (hol_entry_long_iterate): Always inline.
5224         * elf/dl-load.c (cache_rpath): Don't inline.
5225         * iconvdata/cns11642l2.h: Always inline all functions.
5226         * iconvdata/iso-ir-165.h: Likewise.
5227         * locale/Makefile (aux): Add coll-lookup.
5228         * locale/coll-lookup.c: New file.
5229         * locale/coll-lookup.h (collidx_table_lookup): Do not define here.
5230         (collseq_table_lookup): Likewise.
5231         * locale/weightwc.h: Adjust collidx_table_lookup calls for name change.
5232         * posix/fnmatch_loop.c: Adjust collseq_table_lookup calls for name
5233         change.
5234         * posix/regcomp.c: Likewise.
5235         * posix/regexec.c: Likewise.
5236         * locale/programs/3level.h (*_get): Always inline.
5237         * locale/programs/locfile.h: Move definition of handle_copy to...
5238         * locale/programs/locfile.c: ...here.
5239         * locale/programs/ld-collate.c (obstack_int32_grow): Always inline.
5240         (obstack_int32_grow_fast): Likewise.
5241         (utf8_encode): Likewise.
5242         (find_element): Avoid aliasing problems.
5243         (insert_value): Likewise.
5244         (collate_read): Likewise.
5245         * nss/getent.c (print_hosts): Don't inline
5246         (print_networks): Likewise.
5247         (print_shadow): Likewise.
5248         (build_doc): Likewise.
5249         * nss/nss_files/files-parse.c [ENTDATA] (parser_stclass): Don't
5250         inline.
5251         * posix/regcomp.c (re_set_fastmap): Always inline.
5252         (seek_collating_symbol_entry): Likewise.
5253         (lookup_collation_sequence_value): Likewise.
5254         (build_range_exp): Likewise.
5255         (build_collating_symbol): Likewise.
5256         * posix/regexec.c (acquire_init_state_context): Don't inline.
5257         (clean_state_log_if_need): Likewise.
5258         * resolv/res_send.c (eConsIovec): Rewrite to not return struct and
5259         adjust all callers.
5260         (evConsTime): Likewise.
5261         (evAddTime): Likewise.
5262         (evSubTime): Likewise.
5263         (evNowTime): Likewise.
5264         (evTimeSpec): Removed.
5265         (__libc_res_nsend): Avoid aliasing problem.
5266         * sysdeps/unix/sysv/linux/ifreq.h: Move old_siocgifconf definition to..
5267         * sysdeps/unix/sysv/linux/ifreq.c: ...here.
5268         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h (_dl_string_hwcap):
5269         Always inline.
5270         (_dl_string_platform): Likewise.
5271         * wctype/wchar-lookup.h (wctype_table_lookup): Always inline.
5272         (wcwidth_table_lookup): Likewise.
5273         (wctrans_table_lookup): Likewise.
5274
5275         * sysdeps/unix/sysv/linux/sys/epoll.h: Include <stdint.h>.
5276
5277 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5278
5279         * wcsmbs/wchar.h: Define wint_t in std namespace, too [PR libc/5034].
5280
5281 2003-05-29  Jim Meyering  <jim@meyering.net>
5282
5283         * time/strftime.c (my_strftime) [!defined _NL_CURRENT
5284         && HAVE_STRFTIME]: Use underlying_strftime for %r.
5285         Suggested by Daniel Yacob <locales@geez.org>.
5286
5287 2003-06-12  Steven Munroe  <sjmunroe@us.ibm.com>
5288
5289         * sysdeps/powerpc/powerpc64/dl-machine.h (RTLD_START): Replace
5290         @got notation with @toc.
5291         * sysdeps/powerpc/powerpc64/sysdep.h (CALL_MCOUNT): Likewise.
5292         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Likewise.
5293
5294 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5295
5296         * sysdeps/posix/getaddrinfo.c (gaih_inet): Set no_inet6_date also
5297         if only PF_INET address is needed.
5298
5299         * nss/getXXbyYY_r.c: Make sure we always return a nonzero value in
5300         case of an error.
5301
5302         * scripts/config.guess: Update from upstream version.
5303         * scripts/config.sub: Likewise.
5304
5305 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5306
5307         * locale/programs/ld-time.c (time_output): Also copy the era format,
5308         not only the name.
5309
5310 2003-06-12  H.J. Lu  <hongjiu.lu@intel.com>
5311
5312         * posix/transbug.c (run_test): Return 1 for failure.
5313         (do_test): Compare only if run_test is successful.
5314
5315 2003-06-12  Simon Josefsson  <jas@extundo.com>
5316
5317         * argp/argp.h [!__THROW]: Define if undefined.
5318
5319 2003-06-12  Ulrich Drepper  <drepper@redhat.com>
5320
5321         * sysdeps/unix/sysv/linux/cris/sysdep.h: Fix handling of syscalls with
5322         more than four parameters.
5323         Patch by Uwe Reimann <libc-alpha@pulsar.homelinux.net>.
5324
5325 2003-06-12  Jakub Jelinek  <jakub@redhat.com>
5326
5327         * sysdeps/unix/sysv/linux/ia64/kernel_stat.h: New file.
5328         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: New file.
5329         * sysdeps/unix/sysv/linux/x86_64/kernel_stat.h: New file.
5330
5331         * stdio-common/printf-parsemb.c: Include stdlib.h and sys/param.h.
5332
5333 2003-06-12  Roland McGrath  <roland@redhat.com>
5334
5335         * Makerules ($(objpfx)stubs): Rewrite sed magic.
5336
5337 2003-02-28  Isamu Hasegawa  <isamu@yamato.ibm.com>
5338
5339         * posix/regcomp.c (parse_expression): Deliver translation to
5340         build_word_op, and build_charclass.
5341         (build_charclass): Apply translation for character classes too.
5342         (build_word_op): Deliver translation to build_charclass.
5343         * posix/transbug.c: New file.
5344         * posix/Makefile (tests): Add transbug.
5345
5346 2003-06-04  Paolo Bonzini  <bonzini@gnu.org>
5347
5348         * posix/regexec.c (group_nodes_into_DFAstates): Check for
5349         NEXT_ENDBUF_CONSTRAINT.  Move check for constraints which do a
5350         'continue' before the others.
5351
5352 2003-06-11  Ulrich Drepper  <drepper@redhat.com>
5353
5354         * dirent/scandir.c (SCANDIR): Reset errno after calling selector
5355         function [PR libc/5045].
5356
5357         * sysdeps/i386/bits/byteswap.h (__bswap_32): Use bswap instruction
5358         also for P4.
5359
5360         * time/tzfile.c: Add a couple of __builtin_expect.
5361
5362         Remove warnings gcc 3.3 shows.
5363         * argp/argp-help.c (hol_entry_short_iterate): Don't inline.
5364         * elf/dl-load.c (fillin_rpath): Likewise.
5365         (add_path): Likewise.
5366         * elf/dl-version.c (find_needed): Always inline.
5367         * elf/do-lookup.c (FCT): Don't inline.
5368         * iconv/Makefile: Extend vpath to intl subdir.
5369         (iconvconfig-modules): Add hash-string.
5370         * iconv/gconv_charset.h (strip): Don't inline.
5371         (upstr): Always inline.
5372         Move __gconv_compare_alias prototype to...
5373         * iconv/gconv_int.h: ...here.
5374         * iconv/gconv_db.c: Don't include gconv_charset.h.
5375         * iconv/gconv_conf.c (add_alias): Don't inline.
5376         (insert_module): Likewise.
5377         * iconv/gconv_simple.c (internal_ucs4_loop): Always inline.
5378         (internal_ucs4_loop_unaligned): Likewise.
5379         (internal_ucs4_loop_single): Likewise.
5380         (ucs4_internal_loop): Likewise.
5381         (ucs4_internal_loop_unaligned): Likewise.
5382         (ucs4_internal_loop_single): Likewise.
5383         (internal_ucs4le_loop): Always inline.
5384         (internal_ucs4le_loop_unaligned): Likewise.
5385         (internal_ucs4le_loop_single): Likewise.
5386         (ucs4le_internal_loop): Likewise.
5387         (ucs4le_internal_loop_unaligned): Likewise.
5388         (ucs4le_internal_loop_single): Likewise.
5389         * iconv/loop.c: Always inline the defined functions.
5390         * iconvdata/cns11642.h: Likewise.
5391         * iconvdata/cns11642l1.h: Likewise.
5392         * iconvdata/euc-kr.c: Likewise.
5393         * iconvdata/gb2312.h: Likewise.
5394         * iconvdata/jis0201.h: Likewise.
5395         * iconvdata/jis0208.h: Likewise.
5396         * iconvdata/jis0212.h: Likewise.
5397         * iconvdata/jisx0213.h: Likewise.
5398         * iconvdata/ksc5601.h: Likewise.
5399         * iconvdata/utf-7.c (base64): Don't inline.
5400         * include/libc-symbols.h (symbol_set_first_element): Add cast
5401         (symbol_set_end_p): Likewise.
5402         * include/set-hooks (RUN_HOOK): Likewise.
5403         * inet/Makefile (aux): Add ifreq.
5404         * intl/Makefile (aux): Add some entries from routines.  Add
5405         hash-string.
5406         * intl/hash-string.c: New file.
5407         * intl/hash-string.h: Remove hash_string definition.  Declare
5408         __hash_string.
5409         * iconv/gconv_cache.c (find_module_idx): Adjust hash_string caller.
5410         * iconv/iconvconfig.c (new_name): Likewise.
5411         * intl/dcigettext.c (_nl_find_msg): Likewise.
5412         * intl/loadmsgcat.c (_nl_load_domain): Likewise.
5413         * io/ftw.c (open_dir_stream): Always inline.
5414         (process_entry): Don't inline.
5415         * locale/findlocale.c: Include gconv_int.h.
5416         * locale/setlocale.c (new_composite_name): Don't inline.
5417         * locale/weight.h (findidx): Always inline.
5418         * locale/weightwc.h (findidx): Likewise.
5419         * locale/programs/linereader.c (lr_ignore_rest): Define here.
5420         * locale/programs/linereader.h (lr_ignore_rest): Don't define here,
5421         just declare it.
5422         (lr_getc): Always inline.
5423         (lr_ungetc): Likewise.
5424         * nss/nss_files/files-parse.c (parse_list): Likewise.
5425         * stdio-common/Makefile (aux): Add printf-parsemb and
5426         printf-parsewc.
5427         * stdio-common/_itoa.h (_itoa_word): Always inline.
5428         (_fitoa_word, _fitoa): Don't define here, only declare.
5429         * stdio-common/_itoa.c (_iftoa_word): Add here.
5430         (_fitoa): Likewise.
5431         * stdio-common/_itowa.h (_itowa_word): Always inline.
5432         * stdio-common/printf-parse.h (read_int): Don't inline.
5433         (find_spec): Don't define.
5434         Declare __find_specmb and __find_specwc.
5435         (parse_one_spec): Don't define.
5436         Declare __parse_one_specmb and __parse_one_specwc.
5437         * stdio-common/printf-parsemb.c: New file.
5438         * stdio-common/printf-parsewc.c: New file.
5439         * stdio-common/vfprintf.c: Update calls to find_spec and
5440         parse_one_spec for new names.
5441         * stdio-common/printf-prs.c: Likewise.  Define DONT_NEED_READ_INT.
5442         * stdlib/Makefile (aux): Add grouping and groupingwc.
5443         * stdlib/grouping.c: New file.
5444         * stdlib/groupingwc.c: New file.
5445         * stdlib/grouping.h (correctly_grouped_prefix): Don't define here.
5446         Just prototype.
5447         * stdlib/rpmatch.c (try): Don't inline.
5448         * stdlib/strtod.c (round_and_return): Don't line.
5449         (str_to_mpn): Likewise.
5450         (__mpn_lshift_1): Always inline.  Optimize only for constant count.
5451         Adjust for name change of correctly_grouped_prefix.
5452         * sysdeps/generic/strtol.c: Adjust for name change of
5453         correctly_grouped_prefix.
5454         * string/strxfrm.c (utf8_encode): Don't inline.
5455         * sysdeps/generic/dl-cache.c: Define _dl_cache_libcmp.
5456         * sysdeps/generic/dl-cache.h: Just declare _dl_cache_libcmp.
5457         * sysdeps/generic/ifreq.c: New file.
5458         * sysdeps/unix/sysv/linux/ifreq.c: New file.
5459         * sysdeps/generic/ifreq.h (__ifreq): Only declare here.
5460         * sysdeps/unix/sysv/linux/ifreq.h: Likewise.
5461         * sysdeps/generic/ldsodefs.h (_dl_name_match_p): Always inline.
5462         * sysdeps/generic/unwind-dw2-fde.c (start_fde_sort): Don't inline.
5463         (fde_split): Likewise.
5464         (fde_merge): Likewise.
5465         (end_fde_sort): Likewise.
5466         (init_object): Likewise.
5467         (binary_search_unencoded_fdes): Likewise.
5468         (binary_search_single_encoding_fdes): Likewise.
5469         (binary_search_mixed_encoding_fdes): Likewise.
5470         * sysdeps/generic/wordexp.c (w_addchar): Don't inline.
5471         * sysdeps/i386/dl-machine.c (elf_machine_runtime_setup): Always inline.
5472         * sysdeps/posix/sprofil.c (profil_count): Don't inline.
5473         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
5474         Add xstatconv.
5475         * sysdeps/unix/sysv/linux/xstatconv.h: New file.
5476         * sysdeps/unix/sysv/linux/xstatconv.c: Don't inline the function.
5477         Export them.  Prepend __ to name.
5478         * sysdeps/unix/sysv/linux/Dist: Add xstatconv.h.
5479         * sysdeps/unix/sysv/linux/fxstat.c: Adjust for name change of
5480         conversion functions.
5481         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
5482         * sysdeps/unix/sysv/linux/lxstat.c: Likewise.
5483         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
5484         * sysdeps/unix/sysv/linux/xstat.c: Likewise.
5485         * sysdeps/unix/sysv/linux/xstat64.c: Likewise.
5486         * sysdeps/unix/sysv/linux/i386/fxstat.c: Likewise.
5487         * sysdeps/unix/sysv/linux/i386/lxstat.c: Likewise.
5488         * sysdeps/unix/sysv/linux/i386/xstat.c: Likewise.
5489         * sysdeps/unix/sysv/linux/pathconf.c (__statfs_link_max,
5490         __statfs_filesize_max, __statfs_symlinks): Define here.  __ prepended
5491         to name.  Change callers.
5492         * sysdeps/unix/sysv/linux/pathconf.h (__statfs_link_max,
5493         __statfs_filesize_max, __statfs_symlinks): Don't define here, just
5494         declare.
5495         * sysdeps/unix/sysv/linux/fpathconf.c: Change all callers.
5496         * time/tzfile.c (decode): Always inline.
5497         * wcsmbs/wcsnrtombs.c: Change type of inbuf to unsigned char*.
5498         Remove cast in tomb function call.
5499         * wcsmbs/wcsrtombs.c Likewise.
5500         * wcsmbs/wcstob.c: Introduce new temp variable to take pointer in
5501         tomb function call.
5502
5503 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5504
5505         * po/zh_CN.po: Update from translation team.
5506
5507 2003-06-10  Jakub Jelinek  <jakub@redhat.com>
5508
5509         * sysdeps/unix/sysv/linux/bits/in.h (IPV6_V6ONLY, IPV6_JOIN_ANYCAST,
5510         IPV6_LEAVE_ANYCAST, IPV6_IPSEC_POLICY, IPV6_XFRM_POLICY): Define.
5511
5512 2003-06-10  Ulrich Drepper  <drepper@redhat.com>
5513
5514         * inet/Makefile (aux): Add check_pf.
5515         * include/ifaddrs.h: Add prototype for __check_pf.
5516         * sysdeps/generic/check_pf.c: New file.
5517         * sysdeps/unix/sysv/linux/check_pf.c: New file.
5518         * sysdeps/unix/sysv/linux/ifaddrs.h (__no_netlink_support): Renamed
5519         from no_netlink_support.  Export.
5520         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't call getifaddrs,
5521         call __check_pf.
5522
5523         * sysdeps/generic/ifaddrs.h: Add libc_hidden_def.
5524
5525         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Don't leak memory
5526         from getifaddr calls.
5527
5528 2003-06-09  Jakub Jelinek  <jakub@redhat.com>
5529
5530         * sysdeps/unix/sysv/linux/kernel-features.h
5531         (__ASSUME_SETRESGID_SYSCALL): Define.
5532         * sysdeps/unix/sysv/linux/setegid.c: Use __ASSUME_SETRESGID_SYSCALL
5533         instead of __ASSUME_SETRESUID_SYSCALL.
5534         (setegid): Only use setresgid32 inline syscall if __NR_setresgid32 is
5535         defined.
5536         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Only use setresgid32
5537         inline syscall if __NR_setresuid32 is defined.
5538         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5539         __ASSUME_SETRESGID_SYSCALL instead of __ASSUME_SETRESUID_SYSCALL.
5540         * sysdeps/unix/sysv/linux/i386/setregid.c: Backout last changes.
5541         * sysdeps/unix/sysv/linux/i386/setreuid.c: Likewise.
5542         * sysdeps/unix/sysv/linux/sparc/sparc32/setegid.c (setegid): Protect
5543         code handling non-existant setresgid32 syscall with
5544         #if __ASSUME_SETRESGID_SYSCALL == 0.
5545
5546 2003-06-09  Andreas Schwab  <schwab@suse.de>
5547
5548         * sunrpc/Makefile (generated): Remove rpc-proto.c, rpc-proto.d.
5549         ($(rpcsvc:%.x=$(objpfx)x%$o)): Don't depend on
5550         $(objpfx)rpc-proto.d.
5551         (rpcsvc-dt-files, rpcsvc-depfiles): Define.  Include
5552         $(rpcsvc-depfiles) instead of $(objpfx)rpc-proto.d.
5553         ($(objpfx)rpc-proto.d, $(objpfx)rpc-proto.c): Remove rules.
5554
5555 2003-06-08  Ulrich Drepper  <drepper@redhat.com>
5556
5557         * sysdeps/unix/sysv/linux/seteuid.c (seteuid): Use setresuid32
5558         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5559         defined drop compatibility code.
5560         * sysdeps/unix/sysv/linux/setegid.c (setegid): Use setresgid32
5561         syscall directly if possible.  If __ASSUME_SETRESUID_SYSCALL is
5562         defined drop compatibility code.
5563         * sysdeps/unix/sysv/linux/i386/seteuid.c (seteuid): Use
5564         setresuid32 syscall directly if possible.
5565         * sysdeps/unix/sysv/linux/i386/setegid.c (setegid): Use
5566         setresgid32 syscall directly if possible.
5567         * sysdeps/unix/sysv/linux/i386/setregid.c (__setregid): Make POSIX
5568         compliant.  Don't change sgid.
5569         * sysdeps/unix/sysv/linux/i386/setreuid.c (__setreuid): Make POSIX
5570         compliant.  Don't change suid.
5571
5572         * config.h.in: Add have-forced-unwind.
5573         * configure.in: Add AC_SUBST(libc_cv_forced_unwind).
5574
5575 2003-06-07  Ulrich Drepper  <drepper@redhat.com>
5576
5577         * test-skeleton.c (main): If EXPECTED_STATUS is defined check that
5578         returned status from child matches.
5579
5580         * Makeconfig (gnulib): Add -lgcc_eh once again.
5581
5582 2003-06-06  Ulrich Drepper  <drepper@redhat.com>
5583
5584         * test-skeleton.c (main): Use TEMP_FAILURE_RETRY with waitpid.
5585
5586         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Only allow
5587         %edx for first parameter.  This means no pushl and therefore the
5588         unwind info isn't screwed up.
5589
5590 2003-06-04  Richard Henderson  <rth@redhat.com>
5591
5592         * sysdeps/alpha/dl-machine.h (RTLD_START): Fix top-of-stack backtrace.
5593         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
5594         * sysdeps/alpha/elf/start.S: Likewise.  Remove pointless allocation.
5595         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Use standard ldgp
5596         entry sequence and explicit relocs.  Add unwind info for sigreturn
5597         and rt_sigreturn.
5598         * configure.in (libc_cv_asm_cfi_directives): Test .cfi_remember_state.
5599
5600         * sysdeps/unix/sysv/linux/alpha/syscalls.list (semtimedop): New.
5601         Annotate some parameters.
5602         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_semtimedop): New.
5603
5604         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Fix typo in conversion.
5605
5606         * include/libc-symbols.h (symbol_set_declare): Use arrays
5607         of unspecified size.
5608
5609 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5610
5611         * config.make.in (ASFLAGS-config): New.
5612         * Makeconfig (ASFLAGS): Append $(ASFLAGS-config).
5613         * configure.in (libc_cv_as_noexecstack): New check.
5614         (ASFLAGS_config): Substitute.
5615
5616 2003-06-04  Jakub Jelinek  <jakub@redhat.com>
5617
5618         * sysdeps/i386/fpu/bits/mathinline.h (log1p, asinh, acosh, atanh,
5619         hypot, logb): Protect with #ifdef __FAST_MATH__.
5620
5621 2003-06-04  Thorsten Kukuk  <kukuk@suse.de>
5622
5623         * sysdeps/i386/fpu/bits/mathinline.h (ldexpf, ldexpl): Protect with
5624         #ifdef __FAST_MATH__.
5625
5626 2003-06-03  Ulrich Drepper  <drepper@redhat.com>
5627
5628         * sysdeps/generic/glob.c [HAVE_D_TYPE] (glob_in_dir): Also allow
5629         DT_LNK entries if GLOB_ONLYDIR is set [PR libc/5043].
5630         * posix/globtest.sh: Adjust for this change.
5631
5632         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_open): Call getsockname
5633         to get the actual PID value used in the records passed up.
5634         (getifaddrs): Don't initialize nh.pid here.
5635
5636 2003-06-02  Ulrich Drepper  <drepper@redhat.com>
5637
5638         * sysdeps/unix/sysv/linux/ifaddrs.c (netlink_receive): Minor
5639         optimization.
5640
5641         * po/zh_CN.po: Update from translation team.
5642
5643         * posix/getconf.c (main): Also recognize names without the
5644         _POSIX_ prefix.
5645
5646         * elf/Makefile (CFLAGS-dl-lookup.c): Define.
5647
5648 2003-06-02  Bernd Schmidt  <bernds@redhat.com>
5649
5650         * sysdeps/i386/fpu/bits/mathinline.h (sqrt, __sqrtl, ldexp,
5651         ldexpf, ldexpl): Only define if __FAST_MATH__.
5652
5653 2003-06-02  Richard C. Bilson  <rcbilson@plg.uwaterloo.ca>
5654
5655         Replace hard-coded offsets into struct sigcontext with generated file.
5656         * sysdeps/unix/sysv/linux/ia64/sigcontext-offsets.sym: New file.
5657         * sysdeps/unix/sysv/linux/ia64/Makefile
5658         [$(subdir) = stdlib] (gen-as-const-headers): Add it.
5659         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h: Include it instead of
5660         defining SC_* macros here.
5661
5662 2003-06-02  Jakub Jelinek  <jakub@redhat.com>
5663
5664         * sysdeps/unix/sysv/linux/bits/sched.h (CLONE_PID): Remove.
5665
5666 2003-06-01  Jakub Jelinek  <jakub@redhat.com>
5667
5668         * sysdeps/i386/dl-machine.h: Include <sysdep.h>.
5669
5670 2003-06-01  Ulrich Drepper  <drepper@redhat.com>
5671
5672         * test-skeleton.c (main): Request getopt to not reorder the
5673         command line.
5674
5675         * elf/Makefile (CFLAGS-dl-runtime.c): Define.
5676
5677         * wcsmbs/wcpncpy.c (__wcpncpy): Fix broken implementation to match
5678         stpncpy.
5679
5680 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5681
5682         * sysdeps/unix/sysv/linux/ia64/bits/sigaction.h (SA_NOCLDWAIT): Define.
5683
5684 2003-05-31  Jakub Jelinek  <jakub@redhat.com>
5685
5686         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_plt_conflict):
5687         New function.
5688         (elf_machine_rela) <case R_PPC64_JMP_SLOT>: Avoid
5689         RESOLVE_CONFLICT_FIND_MAP.  If RESOLVE_CONFLICT_FIND_MAP is defined,
5690         call elf_machine_plt_conflict instead of elf_machine_fixup_plt.
5691
5692 2003-05-31  Ulrich Drepper  <drepper@redhat.com>
5693
5694         * sysdeps/i386/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Add
5695         CFI directives.
5696
5697         * csu/Makefile: Fix Makefile warnings regarding Scrt1.o.
5698
5699         * libio/fileops.c (_IO_file_open): Don't mark as inline.
5700
5701         * sysdeps/ia64/elf/initfini.c (gmon_initializer): Mark with
5702         attribute used.
5703
5704 2003-05-30  Ulrich Drepper  <drepper@redhat.com>
5705
5706         * scripts/config.guess: Update from master copy.
5707         * scripts/config.sub: Likewise.
5708
5709 2003-05-30  Guido Guenther  <agx@sigxcpu.org>
5710
5711         * sysdeps/mips/mips64/bsd-_setjmp.S: Include <sys/asm.h> for
5712         SETUP_GP64 and friends.
5713         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Fix register
5714         names in internal_syscall{6,7}.
5715         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
5716         * sysdeps/unix/sysv/linux/mips/pread.c [_MIPS_SIM == _ABI64]: Fix
5717         number of syscall arguments.
5718         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
5719         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
5720         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
5721
5722 2003-05-30  Andreas Jaeger  <aj@suse.de>
5723
5724         * sysdeps/x86_64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
5725         Add CFI directives.
5726
5727         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (RESTORE2): Add CFI
5728         directives.
5729
5730         * sysdeps/generic/sysdep.h: Add CFI_* macros for C files.
5731
5732         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
5733         Add CFI directives.
5734
5735 2003-05-30  Jakub Jelinek  <jakub@redhat.com>
5736
5737         * sysdeps/powerpc/powerpc32/elf/start.S: Make code compilable with
5738         SHARED.
5739
5740 2003-05-11  Andreas Schwab  <schwab@suse.de>
5741
5742         * Makerules: Always use -MP together with -MD.
5743         (sed-remove-dotot): Substitute $(..) also at start of line.
5744         ($(stdio_lim:h=st)): Use -MD instead of SUNPRO_DEPENDENCIES.
5745         Generated defines with a single compiler call.
5746         Use $(sed-remove-dotdot).
5747         * mach/Makefile ($(objpfx)mach-syscalls.mk): Use -MD instead
5748         of DEPENDENCIES_OUTPUT, and use $(sed-remove-objpfx).
5749         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
5750         Use -MD instead of SUNPRO_DEPENDENCIES, and use $(sed-remove-objpfx).
5751         * sysdeps/unix/sysv/linux/mips/Makefile
5752         ($(objpfx)syscall-%.h): Likewise.
5753
5754 2003-05-28  Roland McGrath  <roland@redhat.com>
5755
5756         * malloc/malloc.h [! __GNUC__] (__const): Define if undefined.
5757
5758 2003-05-26  Aldy Hernandez  <aldyh@redhat.com>
5759
5760         * soft-fp/soft-fp.h (FP_EX_UNDERFLOW): Define to 0.
5761
5762 2003-05-28  Roland McGrath  <roland@redhat.com>
5763
5764         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Pass fourth argument to
5765         rt_sigprocmask system call.
5766         * sysdeps/unix/sysv/linux/ia64/ucontext_i.h (SC_MASK): Fix value.
5767         From Peter A. Buhr <pabuhr@plg2.math.uwaterloo.ca>.
5768
5769 2003-05-28  Ulrich Drepper  <drepper@redhat.com>
5770
5771         * include/libc-symbols.h: Define hidden attribute for real also if
5772         LIBC_NONSHARED is defined.  Patch by Jakub Jelinek.
5773
5774         * csu/Makefile: Add rules to build Scrt1.o.
5775         * sysdeps/i386/elf/start.S: Make code compilable with SHARED.
5776         * sysdeps/x86_64/elf/start.S: Likewise.
5777
5778 2003-05-27  Jakub Jelinek  <jakub@redhat.com>
5779
5780         * stdio-common/vfprintf.c (process_arg, process_string_arg): Use
5781         pa_int/pa_u_int instead of pa_short_int, pa_u_short_int and pa_char.
5782         * stdio-common/printf-parse.h (union printf_arg): Remove pa_char,
5783         pa_short_int, pa_u_short_int and pa_float.
5784
5785 2003-05-26  Jakub Jelinek  <jakub@redhat.com>
5786
5787         * libio/strops.c (_IO_str_init_static): Change into a wrapper around
5788         _IO_str_init_static_internal.
5789         (_IO_str_init_static_internal): Moved from _IO_str_init_static,
5790         change size argument to _IO_size_t, don't limit sprintf to 64M.
5791         (_IO_str_init_readonly): Call _IO_str_init_static_internal.
5792         * libio/wstrops.c (_IO_wstr_init_static): Change size argument to
5793         _IO_size_t, don't limit swprintf to 256M.
5794         (_IO_wstr_init_readonly): Remove.
5795         * libio/libioP.h (_IO_str_init_static_internal, _IO_wstr_init_static):
5796         Adjust prototypes.
5797         (_IO_wstr_init_readonly): Remove prototype.
5798         * libio/iovsprintf.c (_IO_vsprintf): Use
5799         _IO_str_init_static_internal instead of INTUSE(_IO_str_init_static).
5800         * libio/iovsscanf.c (_IO_vsscanf): Likewise.
5801         * libio/memstream.c (open_memstream): Likewise.
5802         * libio/obprintf.c (_IO_obstack_vfprintf): Likewise.
5803         * libio/vasprintf.c (_IO_vasprintf): Likewise.
5804         * libio/vsnprintf.c (_IO_vsnprintf): Likewise.
5805         * stdio-common/tst-sprintf.c (main): Add new test.
5806
5807 2003-05-26  Ulrich Drepper  <drepper@redhat.com>
5808
5809         * stdio-common/vfprintf.c (vfprintf): Be bug-compatible with some
5810         other implementation in respect of multiple uses of parameter with
5811         different types.
5812
5813 2003-05-25  Ulrich Drepper  <drepper@redhat.com>
5814
5815         * sysdeps/unix/sysv/linux/kernel-features.h: Define
5816         __ASSUME_FUTEX_REQUEUE for >= 2.5.70.
5817
5818 2003-05-22  Andreas Jaeger  <aj@suse.de>
5819
5820         * sysdeps/unix/sysv/linux/x86_64/gettimeofday.S: Add CFI
5821         directives.
5822         * sysdeps/unix/sysv/linux/x86_64/time.S: Likewise.
5823         * sysdeps/x86_64/strtok.S: Likewise.
5824
5825 2003-05-20  Guido Guenther  <agx@sigxcpu.org>
5826
5827         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Change SI_ASYNCNL
5828         to -60 and define SI_TKILL.
5829
5830 2003-05-21  H.J. Lu  <hongjiu.lu@intel.com>
5831
5832         * math/test-fenv.c (feexcp_nomask_test): Fix comment.
5833         (feexcp_mask_test): Likewise.
5834
5835 2003-05-21  Ulrich Drepper  <drepper@redhat.com>
5836
5837         * locale/programs/locale.c (main): Fix typo in last patch.
5838
5839         * csu/elf-init.c: Mark __preinit_array_start, __preinit_array_end,
5840         __init_array_start, __init_array_end, __fini_array_start, and
5841         __fini_array_end as hidden.
5842
5843 2003-05-21  Petter Reinholdtsen  <pere@hungry.com>
5844
5845         * locale/programs/locale.c (main): Report an error if setlocale()
5846         fails [PR libc/2254].
5847
5848 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5849
5850         * sysdeps/unix/sysv/linux/s390/system.c: New file.
5851
5852 2003-05-21  Jakub Jelinek  <jakub@redhat.com>
5853
5854         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (LOADARGS_0,
5855         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5856         LOADARGS_6): Don't error if syscall argument is a string literal.
5857         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h (LOADARGS_0,
5858         LOADARGS_1, LOADARGS_2, LOADARGS_3, LOADARGS_4, LOADARGS_5,
5859         LOADARGS_6): Likewise.
5860
5861 2003-05-21  Andreas Jaeger  <aj@suse.de>
5862
5863         * sysdeps/generic/sysdep.h (cfi_offset, cfi_startproc,
5864         cfi_endproc, cfi_def_cfa, cfi_def_ccfa_register,
5865         cfi_def_cfa_offset, cfi_adjust_cfa_offset, cfi_offset): Define.
5866
5867         * sysdeps/x86_64/sysdep.h (CALL_MCOUNT): Add cfi directives.
5868         (ENTRY): Likewise.
5869         (END): Likewise.
5870
5871         * configure.in: Test for asm cfi directives.
5872
5873         * config.h.in: Add HAVE_ASM_CFI_DIRECTIVES.
5874
5875 2003-05-17  Andreas Jaeger  <aj@suse.de>
5876
5877         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Revert last patch.
5878
5879         * rt/tst-clock_nanosleep.c: Include <time.h> for clock_nanosleep.
5880
5881 2003-05-16  Ulrich Drepper  <drepper@redhat.com>
5882
5883         * rt/Makefile (tests): Add tst-clock_nanosleep.
5884         * rt/tst-clock_nanosleep.c: New file.
5885         * posix/Makefile (tests): Add tst-nanosleep.
5886         * posix/tst-nanosleep.c: New file.
5887
5888         * sysdeps/unix/clock_nanosleep.c (CPUCLOCK_P): Fix definition.
5889
5890         * include/features.h (__USE_XOPEN2K): Define also for
5891         _POSIX_C_SOURCE>=200112L.
5892
5893         * sysdeps/unix/sysv/linux/sigwaitinfo.c (do_sigwaitinfo): Fold
5894         SI_TKILL code into SI_USER.
5895         * sysdeps/unix/sysv/linux/sigtimedwait.c (do_sigtimedwait): Likewise.
5896
5897         * sysdeps/posix/sigpause.c (do_sigpause): Use sigdelset after all.
5898
5899 2003-05-15  Jakub Jelinek  <jakub@redhat.com>
5900
5901         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow):
5902         Remove sym argument, always use refsym.
5903         (__process_machine_rela): Adjust callers.
5904         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
5905         Likewise.
5906         * sysdeps/powerpc/powerpc32/dl-machine.h (_dl_reloc_overflow):
5907         Adjust prototype.
5908         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Likewise.
5909
5910 2003-05-15  Ulrich Drepper  <drepper@redhat.com>
5911
5912         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Fix typo
5913         (DL_NEED_SYSINFO -> NEED_DL_SYSINFO).  If aux value is not known
5914         print numeric values.
5915
5916 2003-05-12  Thorsten Kukuk  <kukuk@suse.de>
5917
5918         * inet/netinet/igmp.h: Sync with Linux Kernel 2.5.69 and *BSD.
5919
5920 2003-05-14  Andreas Schwab  <schwab@suse.de>
5921
5922         * sysdeps/unix/sysv/linux/ia64/umount.c: New file.
5923
5924 2003-05-14  Jakub Jelinek  <jakub@redhat.com>
5925
5926         * elf/rtld.c (dl_main): For LD_TRACE_PRELINKING print search scope
5927         even if no DT_NEEDED is present.
5928
5929 2003-05-13  David Mosberger  <davidm@hpl.hp.com>
5930
5931         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Fix the fix from
5932         2003-03-27: setjmp is NOT a leaf-routine (due to the call to
5933         __sigjmp_save) so we can't keep the saved unat value in a scratch
5934         register (r16).  Use loc2 instead.
5935
5936 2003-05-13  Ulrich Drepper  <drepper@redhat.com>
5937
5938         * csu/Makefile: Do compile elf-init with PIC flag since in dynamic
5939         binaries it has to be relocatable.
5940
5941         * sysdeps/unix/sysv/linux/waitpid.c: Use waitpid syscall is available.
5942
5943 2003-05-12  Steven Munroe  <sjmunroe@us.ibm.com>
5944
5945         * sysdeps/powerpc/bits/atomic.h
5946         (__arch_compare_and_exchange_bool_8_rel): Define.
5947         (__arch_compare_and_exchange_bool_16_rel): Define.
5948         (__ARCH_REL_INSTR): Define if not already defined.
5949         (__arch_atomic_exchange_and_add_32): Add "memory" to clobber list.
5950         (__arch_atomic_decrement_if_positive_32):
5951         Add "memory" to clobber list.
5952         (__arch_compare_and_exchange_val_32_acq): Remove release sync.
5953         (__arch_compare_and_exchange_val_32_rel): Define.
5954         (__arch_atomic_exchange_32): Remove.
5955         (__arch_atomic_exchange_32_acq): Define.
5956         (__arch_atomic_exchange_32_rel): Define.
5957         (atomic_compare_and_exchange_val_rel): Define.
5958         (atomic_exchange_acq): Use __arch_atomic_exchange_*_acq forms.
5959         (atomic_exchange_rel): Define.
5960         * sysdeps/powerpc/powerpc32/bits/atomic.h
5961         (__arch_compare_and_exchange_bool_32_acq): Remove release sync.
5962         (__arch_compare_and_exchange_bool_32_rel): Define.
5963         (__arch_compare_and_exchange_bool_64_rel): Define.
5964         (__arch_compare_and_exchange_val_64_rel): Define.
5965         (__arch_atomic_exchange_64): Remove.
5966         (__arch_atomic_exchange_64_acq): Define.
5967         (__arch_atomic_exchange_64_rel): Define.
5968         * sysdeps/powerpc/powerpc64/bits/atomic.h
5969         (__arch_compare_and_exchange_bool_32_rel): Define.
5970         (__arch_compare_and_exchange_bool_64_acq): Remove release sync.
5971         (__arch_compare_and_exchange_bool_64_rel): Define.
5972         (__arch_compare_and_exchange_val_64_acq): Remove release sync.
5973         (__arch_compare_and_exchange_val_64_rel): Define.
5974         (__arch_atomic_exchange_64): Remove.
5975         (__arch_atomic_exchange_64_acq): Define.
5976         (__arch_atomic_exchange_64_rel): Define.
5977         (__arch_atomic_exchange_and_add_64): Add "memory" to clobber list.
5978         (__arch_atomic_decrement_if_positive_64):
5979         Add "memory" to clobber list.
5980         [!UP](__ARCH_REL_INSTR): Define as lwsync.
5981
5982 2003-05-11  Andreas Schwab  <schwab@suse.de>
5983
5984         * io/Makefile ($(objpfx)ftwtest.out): Use absolute file names.
5985
5986 2003-05-11  Ulrich Drepper  <drepper@redhat.com>
5987
5988         * time/tst-strftime.c (do_test): Add tests for - flag.
5989
5990 2003-05-11  Jim Meyering  <jim@meyering.net>
5991
5992         * time/strftime.c (my_strftime): Let the `-' (no-pad) flag affect
5993         the space-padded-by-default conversion specifiers, %e, %k, %l.
5994
5995 2003-05-11  Andreas Schwab  <schwab@suse.de>
5996
5997         * sysdeps/generic/sched_setaffinity.c: Fix parameter name.
5998
5999 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6000
6001         * sysdeps/generic/bits/sched.h: Define cpu_set_t only if not
6002         already defined and when really needed.
6003         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
6004
6005 2003-05-09  Thorsten Kukuk  <kukuk@suse.de>
6006
6007         * sysdeps/unix/sysv/linux/netinet/igmp.h: Don't include kernel
6008         headers, add defines from kernel header, move it from here...
6009         * inet/netinet/igmp.h: ... to here.
6010         * inet/Makefile (headers): Add netinet/igmp.h.
6011         * sysdeps/unix/sysv/linux/Makefile: Remove netinet/igmp.h.
6012         * sysdeps/unix/sysv/linux/Dist: Remove netinet/igmp.h.
6013
6014 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6015
6016         * sysdeps/pthread/lio_listio64.c (lio_listio64): If SIG == NULL,
6017         use dummy sigevent structure with SIGEV_NONE [PR libc/5015].
6018
6019 2003-05-09  Thorsten Kukuk <kukuk@suse.de>
6020
6021         * libio/bits/stdio.h: Sync prototypes with libio/stdio.h
6022         (remove __THROW from possible cancellation points).
6023
6024 2003-05-10  Ulrich Drepper  <drepper@redhat.com>
6025
6026         * posix/sched.h (CPU_SETSIZE): Define.
6027
6028 2003-05-09  Ulrich Drepper  <drepper@redhat.com>
6029
6030         * Makeconfig (gnulib): Remove -lgcc_eh again.
6031
6032         * posix/sched.h: Change prototypes of sched_getaffinity and
6033         sched_setaffinity.  Define CPU_SET, CPU_CLR, CPU_ISSET, and CPU_ZERO.
6034         * sysdeps/generic/sched_getaffinity.c: Adjust definition.
6035         * sysdeps/generic/sched_setaffinity.c: Likewise.
6036         * sysdeps/generic/bits/sched.h: Define __CPU_SETSIZE, __NCPUBITS,
6037         __CPUELT, __CPUMASK, cpu_set_t, __cpu_mask, __CPU_ZERO, __CPU_SET,
6038         __CPU_CLR, and __CPU_ISSET.
6039         * sysdeps/unix/sysv/linux/bits/sched.h: Likewise.
6040         * sysdeps/unix/sysv/linux/sched_getaffinity.c: New file.
6041         * sysdeps/unix/sysv/linux/sched_setaffinity.c: New file.
6042
6043         * include/atomic.h (atomic_exchange_acq): Renamed from atomic_exchange.
6044         (atomic_exchange_rel): New #define.
6045         * sysdeps/ia64/bits/atomic.h: Likewise.
6046         * sysdeps/i386/i486/bits/atomic.h (atomic_exchange_acq): Renamed from
6047         atomic_exchange.
6048         * sysdeps/m68k/m68020/bits/atomic.h: Likewise.
6049         * sysdeps/powerpc/bits/atomic.h: Likewise.
6050         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: Likewise.
6051         * sysdeps/sparc/sparc64/bits/atomic.h: Likewise.
6052         * sysdeps/x86_64/bits/atomic.h: Likewise.
6053         * csu/tst-atomic.c: Use atomic_exchange_acq instead of atomic_exchange.
6054
6055         * sysdeps/unix/sysv/linux/x86_64/get_clockfreq.c: New file.
6056
6057 2003-05-08  Ulrich Drepper  <drepper@redhat.com>
6058
6059         * malloc/thread-m.h: Remove special handling of thread_atfork if
6060         HAVE_register_atfork_malloc is defined.
6061
6062 2003-05-07  Andreas Jaeger  <aj@suse.de>
6063
6064         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Add DWARF2 unwind
6065         information.
6066
6067 2003-05-06  Ulrich Drepper  <drepper@redhat.com>
6068
6069         * libio/oldiofdopen.c (_IO_old_fdopen): Use _IO_old_init not _IO_init.
6070         * libio/oldiofopen.c (_IO_old_fopen): Likewise.
6071         * libio/libioP.h: Declare _IO_old_init.
6072         * libio/genops.c (_IO_no_init): Split in two.  New function
6073         _IO_old_init.
6074
6075 2003-05-05  Ulrich Drepper  <drepper@redhat.com>
6076
6077         * sysdeps/generic/enbl-secure.c (__libc_enable_secure_decided): New
6078         variable.
6079         (__libc_init_secure): Don't do anything if __libc_enable_secure_decided
6080         is nonzero.
6081         * include/unistd.h: Declare __libc_enable_secure_decided.
6082         * elf/dl-support.c (_dl_aux_init): Recognize AT_UID, AT_EUID, AT_GID,
6083         and AT_EGID.  If all found, set __libc_enable_secure and
6084         __libc_enable_secure_decided.
6085
6086         * sysdeps/generic/libc-start.c [!SHARED]: Call
6087         __libc_check_standard_fds after __libc_init_first.
6088
6089 2003-05-05  Roland McGrath  <roland@redhat.com>
6090
6091         * Makerules (common-before-compile): New variable.
6092         ($(common-objpfx)%.make): Depend on that instead of $(before-compile).
6093         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.  Move this rule
6094         to after all setting of before-compile.
6095
6096 2003-05-05  Jakub Jelinek  <jakub@redhat.com>
6097
6098         * sysdeps/ia64/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6099         __arch_compare_and_exchange_val_16_acq): Cast 0 to mem's type.
6100         * sysdeps/powerpc/powerpc32/bits/atomic.h
6101         (__arch_compare_and_exchange_val_64_acq): Likewise.
6102         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h
6103         (__arch_compare_and_exchange_val_8_acq,
6104         __arch_compare_and_exchange_val_16_acq,
6105         __arch_compare_and_exchange_val_64_acq): Likewise.
6106         * sysdeps/sparc/sparc64/bits/atomic.h
6107         (__arch_compare_and_exchange_val_8_acq,
6108         __arch_compare_and_exchange_val_16_acq): Likewise.
6109         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq,
6110         __arch_compare_and_exchange_val_16_acq,
6111         __arch_compare_and_exchange_val_64_acq): Likewise.
6112         * sysdeps/unix/sysv/linux/sh/bits/atomic.h
6113         (__arch_compare_and_exchange_val_64_acq): Likewise.
6114         * sysdeps/s390/s390-64/backtrace.c (__backtrace): Add cast to shut
6115         up warning.
6116         * sysdeps/s390/fpu/fegetenv.c (fegetenv): Likewise.
6117
6118         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h
6119         (INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0):
6120         Return long instead of int.
6121         (INTERNAL_SYSCALL_ERROR_P): Cast val to unsigned long, replace
6122         0xfffff001u with -4095UL.
6123
6124 2003-05-05  Andreas Jaeger  <aj@suse.de>
6125
6126         * sysdeps/x86_64/fpu_control.h: New from i386.
6127
6128         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (__NR_semtimedop):
6129         Define if not defined.
6130
6131         * sunrpc/Makefile (generated-dirs): New variable.
6132         * resolv/Makefile (generated): New variable.
6133
6134 2003-05-04  Roland McGrath  <roland@redhat.com>
6135
6136         * csu/Makefile ($(csu-dummies) target rule): Don't use a temp C file.
6137         Depend on $(before-compile).
6138
6139         * csu/Makefile ($(objpfx)crt%.o): Replace implicit rule with a static
6140         pattern rule.  The implicit rule could be ruled out when $(objpfx)
6141         didn't exist at the time of its consideration (ugh!).
6142
6143         * Makerules (+make-deps): Fix target matching.
6144         Use $(sed-remove-dotdot).
6145
6146 2003-05-03  Ulrich Drepper  <drepper@redhat.com>
6147
6148         * nscd/nscd.c (main): Parse config file right after parsing
6149         parameters.  Then, if get_stats is true, call receive_print_stats.
6150         Drop parameter from nscd_init call.
6151         (get_stats): New variable.
6152         (parse_opt): Set get_stats, don't call receive_print_stats here.
6153         * nscd/nscd.h: Declare dbs, stat_user, and stat_uid.  Adjust nscd_init
6154         prototype.
6155         * nscd/connections.c (stat_user, stat_uid): New variables.
6156         (dbs): Make global.
6157         (nscd_init): Don't read configuration file here.  Drop parameter.
6158         (handle_request): Cleanup handling of non-database lookup requests.
6159         * nscd/nscd_conf.c (nscd_parse_file): Recognize stat-user entry.
6160         Get UID of the specified user.  Use xstrdup instead of strdup.
6161         * nscd/nscd_stat.c (receive_print_stats): Check UID.  If not zero,
6162         check stat_user.
6163         * nscd/Makefile (nscd-modules): Add xstrdup.
6164         * nscd/nscd.conf: Document stat-user entry.
6165
6166 2003-05-03  H.J. Lu  <hongjiu.lu@intel.com>
6167
6168         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_semtimedop): Define
6169         if not defined.
6170
6171 2003-04-22  Roland McGrath  <roland@redhat.com>
6172
6173         * elf/elf.h (AT_SYSINFO_EHDR): New macro, replaces AT_SYSINFO_EH_FRAME.
6174         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
6175         dl_sysinfo_eh_frame member, add dl_sysinfo_dso member instead.
6176         * elf/dl-support.c: Update defn.
6177         * sysdeps/generic/libc-start.c: Don't call __register_frame_info_bases.
6178         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
6179         Set GL(dl_sysinfo_dso) from AT_SYSINFO_EHDR.
6180         (_dl_show_auxv): Grok AT_SYSINFO_EHDR, not AT_SYSINFO_EH_FRAME.
6181         * elf/rtld.c (dl_main) [NEED_DL_SYSINFO]: If GL(dl_sysinfo_dso) is
6182         set, set up a link_map for the preloaded, prelinked object.
6183
6184 2003-05-03  Roland McGrath  <roland@redhat.com>
6185
6186         * sysdeps/gnu/Makefile (generated): Append errlist-compat.c here, ...
6187         * stdio-common/Makefile: ... not here.
6188
6189         * csu/Makefile ($(objpfx)initfini.s): Depend on $(before-compile).
6190         * sysdeps/gnu/Makefile ($(objpfx)errlist-compat.c): Likewise.
6191
6192 2003-05-02  Ulrich Drepper  <drepper@redhat.com>
6193
6194         * sysdeps/unix/sysv/linux/s390/semtimedop.c: New file.
6195
6196         * sysdeps/unix/sysv/linux/alpha/ipc_priv.h (IPCOP_semtimedop): Define.
6197
6198         * sysdeps/generic/dl-fptr.c (_dl_make_fptr): Use 0 not NULL for
6199         comparing ftab elements.
6200         (_dl_unmap): Fix typo in test.
6201         (_dl_make_fptr): Fix typos introduced in last change.
6202
6203         * sysdeps/generic/dl-fptr.c: Put back one optimization from the
6204         original patch.  Use non-exported symbols.  Mark translatable
6205         strings.  Pretty printing.
6206
6207 2003-05-02  Roland McGrath  <roland@redhat.com>
6208
6209         * Makerules (do-stamp): Do $(make-target-directory).
6210
6211 2003-04-07  H.J. Lu  <hjl@gnu.org>
6212
6213         * sysdeps/generic/dl-fptr.c: Modify to remove the lock.
6214
6215 2003-04-03  H.J. Lu  <hjl@gnu.org>
6216
6217         * sysdeps/ia64/dl-fptr.c: Moved to ...
6218         * sysdeps/generic/dl-fptr.c: Here.
6219
6220         * sysdeps/generic/dl-fptr.h: New.
6221         * sysdeps/ia64/dl-fptr.h: New.
6222
6223         * sysdeps/ia64/dl-symaddr.c: Moved to ...
6224         * sysdeps/generic/dl-symaddr.c: here.
6225
6226         * sysdeps/ia64/dl-machine.h: Include <dl-fptr.h>.
6227         (IA64_BOOT_FPTR_TABLE_LEN): Removed.
6228         (ia64_fdesc): Likewise.
6229         (ia64_fdesc_table): Likewise.
6230         (__ia64_make_fptr): Likewise.
6231         (__ia64_init_bootstrap_fdesc_table): Replace __ia64_boot_fptr_table
6232         with _dl_boot_fptr_table.
6233         (elf_machine_runtime_setup): Replace `struct ia64_fdesc' with
6234         `struct fdesc'.
6235         (elf_machine_rela): Replace __ia64_make_fptr with _dl_make_fptr.
6236
6237 2003-05-01  Roland McGrath  <roland@redhat.com>
6238
6239         * sysdeps/generic/bp-thunks.h: Protect includes with [!__ASSEMBLER__].
6240         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: Likewise.
6241
6242         * sysdeps/unix/sysv/linux/Makefile ($(objpfx)syscall-%.h):
6243         Use $(make-target-directory).
6244         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Likewise.
6245
6246         * Makerules (compile-mkdep-flags): New variable, pass -MD -MF $@.d.
6247         (compile-command.S): Don't use ifndef.  Append $(compile-mkdep-flags).
6248         (compile-command.s, compile-command.c): Likewise.
6249         ($(objpfx)%.d): All such pattern rules removed.
6250         ($(+sysdir_pfx)sysd-rules): Don't generate them.
6251         ($(common-objpfx)dummy.d): Target removed.
6252         (make-dummy-dep): Variable removed.
6253         (generate-md5): Likewise.
6254         (%.d: %.dt): New pattern rule.
6255         (+depfiles): Use $(wildcard) function to get just existing *.d files
6256         and .d files for existing *.dt files.
6257         (common-clean): Remove all *.d and *.dt files.
6258         (before-compile): Add $(objpfx). when it doesn't exist,
6259         regardless of $(no_deps).
6260         * elf/rtld-Rules ($(objpfx)rtld-%.d): All such pattern rules removed.
6261         (rtld-depfiles): Use .os.d instead of .d names.
6262         Include existing *.d files and .d files for existing *.dt files.
6263
6264         * Makerules ($(common-objpfx)%.make): Protect with [! subdir].
6265         Use -MD, -MT and -MF flags instead of SUNPRO_DEPENDENCIES variable.
6266
6267         * sysdeps/unix/Makefile ($(common-objpfx)s-%.d): Remove compat.h hack.
6268         Do s-*.d includes only if we have some syscall routines in this subdir.
6269
6270         * include/libc-symbols.h (libc_freeres_ptr): Use %nobits instead of
6271         @nobits.  The former is accepted by gas on any ELF platform.
6272
6273 2003-05-01  Ulrich Drepper  <drepper@redhat.com>
6274
6275         * sysdeps/unix/sysv/linux/semtimedop.c: New file.
6276
6277         * malloc/malloc.c (mSTATs): Call ptmalloc_init if necessary.
6278
6279 2003-04-29  Andreas Schwab  <schwab@suse.de>
6280
6281         * string/test-strcat.c (do_one_test): Fix attribute name.
6282
6283 2003-04-30  Alexandre Oliva  <aoliva@redhat.com>
6284
6285         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h (ucontext): Make
6286         uc_flags long for all ABIs.
6287
6288 2003-04-30  Andreas Jaeger  <aj@suse.de>
6289
6290         * sysdeps/unix/sysv/linux/x86_64/sys/debugreg.h
6291         (DR_CONTROL_RESERVED): Use correct value for 64-bit.
6292         Reported by Andrew Derrick Balsa <andrebalsa@mailingaddress.org>.
6293         Add bi-arch support.
6294
6295 2003-04-30  Ulrich Drepper  <drepper@redhat.com>
6296
6297         * malloc/malloc.c (mEMALIGn): Define alias __memalign_internal.
6298         (__posix_memalign): Use __memalign_internal instead of memalign.
6299
6300 2003-04-29  Roland McGrath  <roland@redhat.com>
6301
6302         * configure.in: Search for AUTOCONF unconditionally.
6303         Just don't complain about missing it under --without-cvs.
6304
6305         * include/libc-symbols.h (__symbol_set_attribute): New macro,
6306         give hidden for [SHARED] and weak for [! SHARED].
6307         (symbol_set_declare): Use that.  Never need weak_extern these days.
6308         * Makerules ($(common-objpfx)shlib.lds): Go back to using PROVIDE.
6309         Depend on $(..)Makerules.
6310
6311 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6312
6313         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Use __ protected
6314         variants of socket, bind, recvmsg, and sendto.
6315
6316         * sysdeps/i386/fpu/ftestexcept.c: Also check SSE status word.
6317
6318         * include/signal.h: Use libc_hidden_proto for sigaddset and sigdelset.
6319         * signal/sigaddset.c: Add libc_hidden_def.
6320         * signal/sigdelset.c: Likewise.
6321
6322 2003-04-29  Jakub Jelinek  <jakub@redhat.com>
6323
6324         * sysdeps/i386/i486/string-inlines.c (__memcpy_g, __strchr_g): Move
6325         to the end of the file.
6326
6327         * configure.in: Change __oline__ to $LINENO.
6328         (HAVE_BUILTIN_REDIRECTION): New check.
6329         * config.h.in (HAVE_BUILTIN_REDIRECTION): Add.
6330         * include/libc-symbols.h (libc_hidden_builtin_proto,
6331         libc_hidden_builtin_def, libc_hidden_builtin_weak,
6332         libc_hidden_builtin_ver): Define.
6333         * include/string.h (memchr, memcpy, memmove, memset, strcat, strchr,
6334         strcmp, strcpy, strcspn, strlen, strncmp, strncpy, strpbrk, strrchr,
6335         strspn, strstr): Add libc_hidden_builtin_proto.
6336         * intl/plural.y: Include string.h.
6337         * sysdeps/alpha/alphaev6/memchr.S (memchr): Add
6338         libc_hidden_builtin_def.
6339         * sysdeps/alpha/alphaev6/memcpy.S (memcpy): Likewise.
6340         * sysdeps/alpha/alphaev6/memset.S (memset): Likewise.
6341         * sysdeps/alpha/alphaev67/strcat.S (strcat): Likewise.
6342         * sysdeps/alpha/alphaev67/strchr.S (strchr): Likewise.
6343         * sysdeps/alpha/alphaev67/strlen.S (strlen): Likewise.
6344         * sysdeps/alpha/alphaev67/strrchr.S (strrchr): Likewise.
6345         * sysdeps/alpha/memchr.S (memchr): Likewise.
6346         * sysdeps/alpha/memset.S (memset): Likewise.
6347         * sysdeps/alpha/strcat.S (strcat): Likewise.
6348         * sysdeps/alpha/strchr.S (strchr): Likewise.
6349         * sysdeps/alpha/strcmp.S (strcmp): Likewise.
6350         * sysdeps/alpha/strcpy.S (strcpy): Likewise.
6351         * sysdeps/alpha/strlen.S (strlen): Likewise.
6352         * sysdeps/alpha/strncmp.S (strncmp): Likewise.
6353         * sysdeps/alpha/strncpy.S (strncpy): Likewise.
6354         * sysdeps/alpha/strrchr.S (strrchr): Likewise.
6355         * sysdeps/arm/memset.S (memset): Likewise.
6356         * sysdeps/arm/strlen.S (strlen): Likewise.
6357         * sysdeps/generic/memchr.c (memchr): Likewise.
6358         * sysdeps/generic/memcpy.c (memcpy): Likewise.
6359         * sysdeps/generic/memmove.c (memmove): Likewise.
6360         * sysdeps/generic/memset.c (memset): Likewise.
6361         * sysdeps/generic/strcat.c (strcat): Likewise.
6362         * sysdeps/generic/strchr.c (strchr): Likewise.
6363         * sysdeps/generic/strcmp.c (strcmp): Likewise.
6364         * sysdeps/generic/strcpy.c (strcpy): Likewise.
6365         * sysdeps/generic/strcspn.c (strcspn): Likewise.
6366         * sysdeps/generic/strlen.c (strlen): Likewise.
6367         * sysdeps/generic/strncmp.c (strncmp): Likewise.
6368         * sysdeps/generic/strncpy.c (strncpy): Likewise.
6369         * sysdeps/generic/strpbrk.c (strpbrk): Likewise.
6370         * sysdeps/generic/strrchr.c (strrchr): Likewise.
6371         * sysdeps/generic/strspn.c (strspn): Likewise.
6372         * sysdeps/generic/strstr.c (strstr): Likewise.
6373         * sysdeps/i386/i486/strcat.S (strcat): Likewise.
6374         * sysdeps/i386/i486/strlen.S (strlen): Likewise.
6375         * sysdeps/i386/i586/memcpy.S (memcpy): Likewise.
6376         * sysdeps/i386/i586/memset.S (memset): Likewise.
6377         * sysdeps/i386/i586/strchr.S (strchr): Likewise.
6378         * sysdeps/i386/i586/strcpy.S (strcpy): Likewise.
6379         * sysdeps/i386/i586/strlen.S (strlen): Likewise.
6380         * sysdeps/i386/i686/memcpy.S (memcpy): Likewise.
6381         * sysdeps/i386/i686/memmove.S (memmove): Likewise.
6382         * sysdeps/i386/i686/memset.S (memset): Likewise.
6383         * sysdeps/i386/i686/strcmp.S (strcmp): Likewise.
6384         * sysdeps/i386/memchr.S (memchr): Likewise.
6385         * sysdeps/i386/memset.c (memset): Likewise.
6386         * sysdeps/i386/strchr.S (strchr): Likewise.
6387         * sysdeps/i386/strcspn.S (strcspn): Likewise.
6388         * sysdeps/i386/strlen.c (strlen): Likewise.
6389         * sysdeps/i386/strpbrk.S (strpbrk): Likewise.
6390         * sysdeps/i386/strrchr.S (strrchr): Likewise.
6391         * sysdeps/i386/strspn.S (strspn): Likewise.
6392         * sysdeps/ia64/memchr.S (memchr): Likewise.
6393         * sysdeps/ia64/memcpy.S (memcpy): Likewise.
6394         * sysdeps/ia64/memmove.S (memmove): Likewise.
6395         * sysdeps/ia64/memset.S (memset): Likewise.
6396         * sysdeps/ia64/strcat.S (strcat): Likewise.
6397         * sysdeps/ia64/strchr.S (strchr): Likewise.
6398         * sysdeps/ia64/strcmp.S (strcmp): Likewise.
6399         * sysdeps/ia64/strcpy.S (strcpy): Likewise.
6400         * sysdeps/ia64/strlen.S (strlen): Likewise.
6401         * sysdeps/ia64/strncmp.S (strncmp): Likewise.
6402         * sysdeps/ia64/strncpy.S (strncpy): Likewise.
6403         * sysdeps/m68k/memchr.S (memchr): Likewise.
6404         * sysdeps/m68k/strchr.S (strchr): Likewise.
6405         * sysdeps/mips/mips64/memcpy.S (memcpy): Likewise.
6406         * sysdeps/mips/mips64/memset.S (memset): Likewise.
6407         * sysdeps/mips/memcpy.S (memcpy): Likewise.
6408         * sysdeps/mips/memset.S (memset): Likewise.
6409         * sysdeps/powerpc/powerpc32/memset.S (memset): Likewise.
6410         * sysdeps/powerpc/powerpc32/strchr.S (strchr): Likewise.
6411         * sysdeps/powerpc/powerpc32/strcmp.S (strcmp): Likewise.
6412         * sysdeps/powerpc/powerpc32/strcpy.S (strcpy): Likewise.
6413         * sysdeps/powerpc/powerpc32/strlen.S (strlen): Likewise.
6414         * sysdeps/powerpc/powerpc64/memcpy.S (memcpy): Likewise.
6415         * sysdeps/powerpc/powerpc64/memset.S (memset): Likewise.
6416         * sysdeps/powerpc/powerpc64/strchr.S (strchr): Likewise.
6417         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Likewise.
6418         * sysdeps/powerpc/powerpc64/strcpy.S (strcpy): Likewise.
6419         * sysdeps/powerpc/powerpc64/strlen.S (strlen): Likewise.
6420         * sysdeps/powerpc/strcat.c (strcat): Likewise.
6421         * sysdeps/sparc/sparc32/memchr.S (memchr): Likewise.
6422         * sysdeps/sparc/sparc32/memcpy.S (memcpy): Likewise.
6423         * sysdeps/sparc/sparc32/memset.S (memset): Likewise.
6424         * sysdeps/sparc/sparc32/strcat.S (strcat): Likewise.
6425         * sysdeps/sparc/sparc32/strchr.S (strchr, strrchr): Likewise.
6426         * sysdeps/sparc/sparc32/strcmp.S (strcmp): Likewise.
6427         * sysdeps/sparc/sparc32/strcpy.S (strcpy): Likewise.
6428         * sysdeps/sparc/sparc32/strlen.S (strlen): Likewise.
6429         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S (memcpy, memmove): Likewise.
6430         * sysdeps/sparc/sparc64/memchr.S (memchr): Likewise.
6431         * sysdeps/sparc/sparc64/memcpy.S (memcpy, memmove): Likewise.
6432         * sysdeps/sparc/sparc64/memset.S (memset): Likewise.
6433         * sysdeps/sparc/sparc64/strcat.S (strcat): Likewise.
6434         * sysdeps/sparc/sparc64/strchr.S (strchr, strrchr): Likewise.
6435         * sysdeps/sparc/sparc64/strcmp.S (strcmp): Likewise.
6436         * sysdeps/sparc/sparc64/strcpy.S (strcpy): Likewise.
6437         * sysdeps/sparc/sparc64/strcspn.S (strcspn): Likewise.
6438         * sysdeps/sparc/sparc64/strlen.S (strlen): Likewise.
6439         * sysdeps/sparc/sparc64/strncmp.S (strncmp): Likewise.
6440         * sysdeps/sparc/sparc64/strncpy.S (strncpy): Likewise.
6441         * sysdeps/sparc/sparc64/strpbrk.S (strpbrk): Likewise.
6442         * sysdeps/sparc/sparc64/strspn.S (strspn): Likewise.
6443         * sysdeps/sh/memcpy.S (memcpy): Likewise.
6444         * sysdeps/sh/memset.S (memset): Likewise.
6445         * sysdeps/sh/strlen.S (strlen): Likewise.
6446         * sysdeps/s390/s390-32/memchr.S (memchr): Likewise.
6447         * sysdeps/s390/s390-32/memcpy.S (memcpy): Likewise.
6448         * sysdeps/s390/s390-32/memset.S (memset): Likewise.
6449         * sysdeps/s390/s390-32/strcmp.S (strcmp): Likewise.
6450         * sysdeps/s390/s390-32/strcpy.S (strcpy): Likewise.
6451         * sysdeps/s390/s390-32/strncpy.S (strncpy): Likewise.
6452         * sysdeps/s390/s390-64/memchr.S (memchr): Likewise.
6453         * sysdeps/s390/s390-64/memcpy.S (memcpy): Likewise.
6454         * sysdeps/s390/s390-64/memset.S (memset): Likewise.
6455         * sysdeps/s390/s390-64/strcmp.S (strcmp): Likewise.
6456         * sysdeps/s390/s390-64/strcpy.S (strcpy): Likewise.
6457         * sysdeps/s390/s390-64/strncpy.S (strncpy): Likewise.
6458         * sysdeps/x86_64/memcpy.S (memcpy): Likewise.
6459         * sysdeps/x86_64/memset.S (memset): Likewise.
6460         * sysdeps/x86_64/strcat.S (strcat): Likewise.
6461         * sysdeps/x86_64/strchr.S (strchr): Likewise.
6462         * sysdeps/x86_64/strcmp.S (strcmp): Likewise.
6463         * sysdeps/x86_64/strcpy.S (strcpy): Likewise.
6464         * sysdeps/x86_64/strcspn.S (strcspn): Likewise.
6465         * sysdeps/x86_64/strlen.S (strlen): Likewise.
6466         * sysdeps/x86_64/strspn.S (strspn): Likewise.
6467         * string/string-inlines.c: Move...
6468         * sysdeps/generic/string-inlines.c: ...here.
6469         (__memcpy_g, __strchr_g): Remove.
6470         (__NO_INLINE__): Define before including <string.h>,
6471         undefine after.  Include bits/string.h and bits/string2.h.
6472         * sysdeps/i386/i486/string-inlines.c: New file.
6473         * sysdeps/i386/string-inlines.c: New file.
6474         * sysdeps/i386/i486/Versions: Remove.
6475         All GLIBC_2.1.1 symbols moved...
6476         * sysdeps/i386/Versions (libc): ...here.
6477
6478 2003-04-29  Ulrich Drepper  <drepper@redhat.com>
6479
6480         * sysdeps/i386/fpu/Makefile: New file.
6481         * sysdeps/i386/fpu/fedisblxcpt.c: Also set SSE control word.
6482         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
6483         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
6484         * sysdeps/i386/fpu/fesetround.c: Also set SSE rounding mode
6485         [PR libc/4987].
6486
6487 2003-04-28  Ulrich Drepper  <drepper@redhat.com>
6488
6489         * nscd/nscd_getgr_r.c: Compact code a bit.  Add some __builtin_expect.
6490         * nscd/nscd_getpw_r.c: Likewise.
6491         * nscd/nscd_gethst_r.c: Likewise.
6492
6493 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6494
6495         * nscd/pwdcache.c: Initialize .version element in result.
6496         * nscd/grpcache.c: Likewise.
6497         * nscd/pwdcache.c: Likewise.
6498
6499 2003-04-27  Andreas Schwab  <schwab@suse.de>
6500
6501         * Makeconfig ($(common-objpfx)sysd-sorted): Fix for running in
6502         subdirectory.
6503
6504 2003-04-27  Andreas Schwab  <schwab@suse.de>
6505
6506         * sysdeps/unix/sysv/linux/m68k/semtimedop.S: New file.
6507
6508 2003-04-27  Ulrich Drepper  <drepper@redhat.com>
6509
6510         * nscd/connections.c (client_queued): New variable.
6511         (nscd_run): Revamp the loop.  Don't call poll except for cleanup
6512         threads.  Keep track of the number of delays caused because of busy
6513         worker threads.
6514         * nscd/nscd.h: Declare client_queued.
6515         * nscd/nscd_stat.c: Transmit and print client_queued information.
6516
6517         * locale/programs/locale.c (show_info): Use '\177' instead of CHAR_MAX.
6518
6519         * Makerules ($(common-objpfx)shlib.lds): Don't use PROVIDE to
6520         define __start_libc_freeres_ptrs and __stop___libc_freeres_ptrs.
6521
6522 2003-04-26  Ulrich Drepper  <drepper@redhat.com>
6523
6524         * elf/dl-close.c [USE_TLS && TLS_TCB_AT_TP] (_dl_close): Reimplement
6525         tracking of freed memory in static TLS block.
6526         * elf/Makefile: Add rules to build and run tst-tls13.
6527         * elf/tst-tls13.c: New file.
6528         * elf/tst-tlsmod13.c: New file.
6529         * elf/tst-tlsmod13a.c: New file.
6530
6531         * elf/tst-tls8.c: Adjust types of variables to avoid warnings.
6532
6533         * elf/dl-reloc.c: Pretty printing.
6534
6535 2003-04-26  Roland McGrath  <roland@redhat.com>
6536
6537         * Makerules ($(common-objpfx)shlib.lds): New target.
6538         (common-generated): Add it.
6539         (build-shlib, build-module): Use that instead of generating every time.
6540         ($(common-objpfx)libc.so): Depend on it.
6541         (lib%.so rule): Likewise.
6542         (build-module-helper-objlist): Remove %.lds.
6543         (LDSEDCMD-c.so): Variable removed.
6544         * iconvdata/extra-module.mk ($(objpfx)$(mod).so):
6545         Depend on $(common-objpfx)shlib.lds.
6546         * dlfcn/Makefile ($(test-modules)): Likewise.
6547
6548 2003-04-26  Roland McGrath  <roland@frob.com>
6549
6550         * sysdeps/mach/hurd/tmpfile.c: Remove USE_IN_LIBIO conditionals.
6551
6552 2003-04-26  Andreas Schwab  <schwab@suse.de>
6553
6554         * elf/dl-close.c (remove_slotinfo): Fix missing parens.
6555
6556 2003-04-25  Ulrich Drepper  <drepper@redhat.com>
6557
6558         * nscd/cache.c (cache_search): Keep track of how many chain links
6559         we searched and update table statistics.
6560         (cache_add): Keep track of how many values are in the table.
6561         (prune_cache): Likewise.  Keep track of locking success.
6562         Print messages about removed entries in separate pass.
6563         * nscd/connections.c (handle_request): Don't print debug message here.
6564         The caller will do it.  Keep track of locking success.
6565         (nscd_run): Print debug message.  Also print PID of the client process.
6566         * nscd/nscd.c (start_time): New variable.
6567         (main): Remember start time.
6568         * nscd/nscd.h: Declare start_time.
6569         (struct database): Add more members for new statistics.
6570         * nscd/nscd_stat.c: Add support for sending, receiving, and printing
6571         of new statistics.
6572
6573         * sysdeps/posix/getaddrinfo.c: Include <stdbool.h>.
6574
6575 2003-04-22  Jakub Jelinek  <jakub@redhat.com>
6576
6577         * include/link.h (NO_TLS_OFFSET): Define to 0 if not defined.
6578         * elf/dl-close.c (_dl_close): Use NO_TLS_OFFSET.
6579         * elf/dl-object.c (_dl_new_object): Initialize l_tls_offset to
6580         NO_TLS_OFFSET.
6581         * elf/rtld.c (_dl_start_final, _dl_start): Likewise.
6582         * elf/dl-reloc.c (CHECK_STATIC_TLS): Use NO_TLS_OFFSET.
6583         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Likewise.
6584         * sysdeps/powerpc/dl-tls.h (TLS_TPREL_VALUE): Don't subtract
6585         TLS_TCB_SIZE.
6586
6587 2003-04-24  Ulrich Drepper  <drepper@redhat.com>
6588
6589         * nss/getent.c: Implement alternative host database lookup via
6590         getaddrinfo.
6591
6592         * include/ifaddrs.h: New file.
6593         * include/netdb.h: Move definitions of AI_V4MAPPED, AI_ALL, and
6594         AI_ADDRCONFIG...
6595         * resolv/netdb.h: ...here.
6596         * sysdeps/gnu/ifaddrs.c. Use libc_hidden_def where appropriate.
6597         * sysdeps/unix/sysv/linux/ifaddrs.c: Likewise.
6598         * sysdeps/posix/getaddrinfo.c: Implement AI_V4MAPPED, AI_ALL, and
6599         AI_ADDRCONFIG.
6600
6601 2003-04-24  Roland McGrath  <roland@redhat.com>
6602
6603         * elf/dl-reloc.c (_dl_allocate_static_tls): Add internal_function.
6604
6605 2003-04-24  Jakub Jelinek  <jakub@redhat.com>
6606
6607         * elf/dl-reloc.c (allocate_static_tls): Rename to...
6608         (_dl_allocate_static_tls): ... this function.  No longer static.
6609         (CHECK_STATIC_TLS): Adjust.
6610         * sysdeps/generic/ldsodefs.h (_dl_allocate_static_tls): New prototype.
6611         * sysdeps/powerpc/powerpc32/dl-machine.h (__process_machine_rela):
6612         Add SYM_MAP argument.
6613         (elf_machine_rela): Adjust caller.  Declare SYM_MAP unconditionally.
6614         Check if SYM_MAP != NULL for R_PPC_DTPREL32.  Only handle 32-bit
6615         TLS relocs here.  #ifdef out relocs which never appear in
6616         .gnu.conflict section from dl-conflict.c processing.
6617         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
6618         Add SYM_MAP argument.  Handle 16-bit TLS relocs here.
6619
6620         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_rela): #ifdef
6621         out relocs which never appear in .gnu.conflict section from
6622         dl-conflict.c processing.
6623         * sysdeps/s390/s390-64/dl-machine.h (elf_machine_rela): Likewise.
6624         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
6625         * sysdeps/i386/dl-machine.h (elf_machine_rela): Likewise.
6626         Use r_type in RESOLVE macro.
6627
6628 2003-04-23  Ulrich Drepper  <drepper@redhat.com>
6629
6630         * nis/ypclnt.c (__yp_bind): Expect YPDB parameter to always be !=
6631         NULL.  Remove code made redundant by this assumption.
6632         (__yp_unbind): Add call to free.  Adjust all callers.
6633
6634         * nis/ypclnt.c (yp_all): Free the dom_binding object after
6635         unbinding it.
6636
6637         * grp/initgroups.c (getgrouplist): Don't copy too much into the
6638         user buffer if more groups are found than fit into it.
6639
6640         * nis/nss_nis/nis-initgroups.c (_nss_nis_initgroups_dyn): Use
6641         extend_alloca.
6642
6643 2003-04-23  Jakub Jelinek  <jakub@redhat.com>
6644
6645         * sysdeps/posix/getaddrinfo.c (gaih_inet): Check for rc == ERANGE,
6646         not rc == errno.  Use extend_alloca.
6647
6648         * elf/tst-tls12.c (main): Fix declaration.
6649         * elf/tst-tls10.c (dummy): Make hidden instead of static.
6650         * elf/tst-tlsmod7.c (dummy): Likewise.
6651         * elf/tst-tlsmod8.c (dummy): Likewise.
6652         * elf/tst-tlsmod9.c (dummy): Likewise.
6653
6654 2003-04-22  Roland McGrath  <roland@redhat.com>
6655
6656         * sysdeps/unix/sysv/linux/not-cancel.h: Put parens around macro args.
6657         (open_not_cancel): Make last argument non-optional.
6658         * sysdeps/generic/check_fds.c (check_one_fd): Update caller.
6659         * sysdeps/unix/sysv/linux/gethostid.c (gethostid): Likewise.
6660         * iconv/gconv_cache.c (__gconv_load_cache): Likewise.
6661
6662         * include/tls.h: Protect against multiple inclusion.
6663
6664 2003-04-22  Ulrich Drepper  <drepper@redhat.com>
6665
6666         * nscd/nscd-client.h: Add declaration for __nscd_open_socket.
6667         * nscd/nscd_gethst_r.c (__nscd_open_socket): Renamed from
6668         open_socket.  Not static anymore.
6669         (nscd_gethst_r): Use __nscd_open_socket.
6670         * nscd/nscd_getgr_r.c (open_socket): Removed.
6671         (nscd_getgr_r): Use __nscd_open_socket.
6672         * nscd/nscd_getpw_r.c (open_socket): Removed.
6673         (nscd_getpw_r): Use __nscd_open_socket.
6674
6675         * nscd/nscd.c (main): Change type of fdn to long int and use strtol.
6676         * nscd/connections.c (handle_request): Add cast to avoid warning.
6677
6678 2003-04-21  Ulrich Drepper  <drepper@redhat.com>
6679
6680         * signal/sigfillset.c: Moved to...
6681         * sysdeps/generic/sigfillset.c: ...here.  If SIGCANCEL is defined
6682         do not set the corresponding bit.
6683
6684         * sysdeps/unix/sysv/linux/sigprocmask.c: Prevent changing mask for
6685         SIGCANCEL.
6686         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Define SI_TKILL.
6687         * sysdeps/unix/sysv/linux/bits/siginfo.h: Define SI_TKILL.
6688         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Define SI_TKILL.
6689         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Define SI_TKILL.
6690         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Define SI_TKILL.
6691
6692 2003-04-20  Ulrich Drepper  <drepper@redhat.com>
6693
6694         * sysdeps/unix/sysv/linux/not-cancel.h (open_not_cancel): Cast
6695         first syscall parameter to const char*.
6696
6697 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6698
6699         * intl/Makefile ($(objpfx)msgs.h): Use C locale for sed run.
6700
6701         * configure.in: Add AC_PROG_CXX.
6702         * config.make.in (CXX): Define.
6703
6704         * sysdeps/i386/i686/hp-timing.h (HP_TIMING_PRINT): Change type of
6705         __len to size_t to avoid warnings.
6706
6707 2003-04-18  Jes Sorensen  <jes@wildopensource.com>
6708
6709         * libc/sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Sync with Linux
6710         2.5.67.
6711         * libc/sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Likewise.
6712
6713 2003-04-19  Ulrich Drepper  <drepper@redhat.com>
6714
6715         * stdlib/cxa_finalize.c (__cxa_finalize): Don't call
6716         UNREGISTER_ATFORK if d == NULL.
6717
6718         * catgets/nl_types.h: Remove __THROW marker from cancellation points.
6719         * dirent/dirent.h: Likewise.
6720         * dlfcn/dlfcn.h: Likewise.
6721         * grp/grp.h: Likewise.
6722         * iconv/iconv.h: Likewise.
6723         * io/fcntl.h: Likewise.
6724         * io/ftw.h: Likewise.
6725         * libio/stdio.h: Likewise.
6726         * misc/sys/mman.h: Likewise.
6727         * misc/sys/select.h: Likewise.
6728         * misc/sys/syslog.h: Likewise.
6729         * misc/sys/uio.h: Likewise.
6730         * posix/spawn.h: Likewise.
6731         * posix/unistd.h: Likewise.
6732         * posix/sys/wait.h: Likewise.
6733         * pwd/pwd.h: Likewise.
6734         * resolv/netdb.h: Likewise.
6735         * rt/aio.h: Likewise.
6736         * shadow/shadow.h: Likewise.
6737         * signal/signal.h: Likewise.
6738         * socket/sys/socket.h: Likewise.
6739         * stdlib/stdlib.h: Likewise.
6740         * streams/stropts.h: Likewise.
6741         * string/string.h: Likewise.
6742         * sysdeps/gnu/utmpx.h: Likewise.
6743         * sysvipc/sys/msg.h: Likewise.
6744         * termios/termios.h: Likewise.
6745         * time/time.h: Likewise.
6746         * wcsmbs/wchar.h: Likewise.
6747         * iconv/gconv_cache.c: Include <not-cancel.h> and use non-cancelable
6748         functions.
6749         * misc/daemon.c: Likewise.
6750         * sysdeps/generic/backtracesymsfd.c: Likewise.
6751         * sysdeps/generic/check_fds.c: Likewise.
6752         * sysdeps/unix/sysv/linux/gethostid.c: Likewise.
6753         * sysdeps/unix/sysv/linux/not-cancel.h: New file.
6754         * sysdeps/generic/not-cancel.h: New file.
6755         * csu/Makefile (distribute): Add not-cancel.h.
6756         * sysdeps/unix/sysv/linux/fatal-prepare.h: New file.
6757         * sysdeps/unix/sysv/linux/Makefile: Define FATAL_PREPARE_INCLUDE
6758         for assert.c and assert-perr.c to include <fatal-prepare.h>.
6759         * sysdeps/unix/sysv/linux/Dist: Add fatal-prepare.h.
6760
6761         * sysdeps/posix/remove.c (remove): Rewrite.  No need to restore
6762         errno and unlink first.
6763
6764         * io/ftw.c (ftw_dir): In all places assume fchdir is available.
6765
6766 2003-04-18  Ulrich Drepper  <drepper@redhat.com>
6767
6768         * sysdeps/unix/sysv/linux/libc_fatal.c (__libc_fatal): Use
6769         INTERNAL_SYSCALL instead of INLINE_SYSCALL.
6770
6771 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6772
6773         * sysdeps/unix/sysv/linux/Makefile: Remove db2 directory handling.
6774
6775         * malloc/Makefile (CFLAGS-malloc.c): Define DEFAULT_TOP_PAD to 128k.
6776         * sysdeps/unix/sysv/linux/Makefile (CFLAGS-malloc.c): Add to, not
6777         replace.
6778
6779         * signal/Makefile (tests): Add tst-sigsimple.
6780         * signal/tst-sigsimple.c: New file.
6781
6782 2003-04-16  Jakub Jelinek  <jakub@redhat.com>
6783
6784         * elf/Makefile (distribute): Add tst-tlsmod{[7-9],1[0-2]}.c and
6785         tst-tls10.h.
6786         (tests): Add tst-tls1[0-2].
6787         (modules-names): Add tst-tlsmod{[7-8],1[0-2]}.
6788         ($(objpfx)tst-tlsmod8.so): Depend on tst-tlsmod7.so.
6789         ($(objpfx)tst-tlsmod10.so): Depend on tst-tlsmod9.so.
6790         ($(objpfx)tst-tlsmod12.so): Depend on tst-tlsmod11.so.
6791         ($(objpfx)tst-tls10): Depend on tst-tlsmod8.so.
6792         ($(objpfx)tst-tls11): Depend on tst-tlsmod10.so.
6793         ($(objpfx)tst-tls12): Depend on tst-tlsmod12.so.
6794         * elf/tst-tls10.c: New test.
6795         * elf/tst-tls11.c: New test.
6796         * elf/tst-tls12.c: New test.
6797         * elf/tst-tls10.h: New file.
6798         * elf/tst-tlsmod7.c: New file.
6799         * elf/tst-tlsmod8.c: New file.
6800         * elf/tst-tlsmod9.c: New file.
6801         * elf/tst-tlsmod10.c: New file.
6802         * elf/tst-tlsmod11.c: New file.
6803         * elf/tst-tlsmod12.c: New file.
6804
6805 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6806
6807         * sysdeps/powerpc/bits/atomic.h: Moved ppc32/64 specific code to ...
6808         * sysdeps/powerpc/powerpc32/bits/atomic.h: New file.
6809         * sysdeps/powerpc/powerpc64/bits/atomic.h: New file.
6810
6811 2003-04-17  Ulrich Drepper  <drepper@redhat.com>
6812
6813         * posix/regex.h: Include <sys/types.h>.
6814
6815         * signal/sigrelse.c (sigrelse): Use sigdelset and not __sigdelset.
6816         The signal number must be checked.
6817         * signal/sighold.c (sighold): Use sigaddset and not __sigaddset.
6818         The signal number must be checked [PR libc/5004].
6819
6820         * sysdeps/unix/sysv/linux/system.c: If compiled without threads
6821         don't do anything fancy.
6822
6823         * sysdeps/generic/bits/libc-lock.h: Define
6824         __rtld_lock_define_initialized_recursive.
6825
6826         * nss/getXXbyYY_r.c [USE_NSCD] (REENTRANT_NAME): Only retry
6827         contacting nscd if NOT_USENSCD_NAME > 0.
6828         * nss/nsswitch.c (__nss_disable_nscd): New function.
6829         * nss/nsswitch.h: Declare it.
6830         * nss/Versions [GLIBC_PRIVATE]: Export __nss_disable_nscd.
6831         * nscd/nscd.c (main): Call __nss_disable_nscd.
6832
6833 2003-04-16  Ulrich Drepper  <drepper@redhat.com>
6834
6835         * stdio-common/perror.c (perror): We don't need to set the offset
6836         to _IO_pos_bad, this is how streams are initialized.
6837
6838         * locale/programs/ld-time.c (TESTARR_ELEM): Make i unsigned.
6839         (time_output): If necessary, allocate new buffer for .name string if
6840         padding is required.
6841
6842         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Check lengths
6843         before copying.  This might leave holes in the list.  Adjust
6844         pointers if necessary.
6845         (netlink_receive): Allocate only one block.
6846         (free_netlink_handle): Adjust appropriately.
6847         (getifaddrs): Lots of cleanups.
6848
6849         * string/test-strncpy.c (do_one_test): Mark start and stop as
6850         possibly unused.
6851         * string/test-memchr.c: Likewise.
6852         * string/test-memcmp.c: Likewise.
6853         * string/test-memcpy.c: Likewise.
6854         * string/test-memmove.c: Likewise.
6855         * string/test-memset.c: Likewise.
6856         * string/test-strcat.c: Likewise.
6857         * string/test-strchr.c: Likewise.
6858         * string/test-strcmp.c: Likewise.
6859         * string/test-strcpy.c: Likewise.
6860         * string/test-strlen.c: Likewise.
6861         * string/test-strncmp.c: Likewise.
6862         * string/test-strpbrk.c: Likewise.
6863         * string/test-strrchr.c: Likewise.
6864         * string/test-strspn.c: Likewise.
6865
6866 2003-04-15  Roland McGrath  <roland@redhat.com>
6867
6868         * libio/fileops.c (_IO_file_close_it): Macro tweak to avoid warning.
6869
6870         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO]: Add decl for
6871         INTUSE(__register_frame_info_bases).
6872
6873 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6874
6875         * elf/elf.h: Define AT_SYSINFO_EH_FRAME.
6876         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Handle
6877         AT_SYSINFO_EH_FRAME.  Adjust string width.
6878         (_dl_show_auxv):Display AT_SYSINFO_EH_FRAME value.
6879         * sysdeps/generic/ldsodefs.h [NEED_DL_SYSINFO] (struct rtld_global):
6880         Add _dl_sysinfo_eh_frame field.
6881         * elf/dl-support.c [NEED_DL_SYSINFO]: Define _dl_sysinfo_eh_frame.
6882         * sysdeps/generic/libc-start.c [NEED_DL_SYSINFO] Define eh_obj
6883         variable.
6884         [NEED_DL_SYSINFO] (LIBC_START_MAIN): Call __register_frame_info_bases
6885         if _dl_sysinfo_eh_frame is non-NULL.
6886
6887         * Makeconfig (gnulib): Add -lgcc_eh.
6888
6889         * config.h.in: Define HAVE_FORCED_UNWIND.
6890
6891 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6892
6893         * sysdeps/powerpc/powerpc64/strcmp.S: Convert to full 64-bit.
6894         * sysdeps/powerpc/powerpc64/strcpy.S: Likewise.
6895
6896 2003-04-15  Jakub Jelinek  <jakub@redhat.com>
6897
6898         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Avoid
6899         checking R_PPC_RELATIVE, R_PPC_NONE and whether relocation is
6900         against local symbol in conflict processing.
6901
6902 2003-04-15  Steven Munroe  <sjmunroe@us.ibm.com>
6903
6904         * sysdeps/powerpc/bits/atomic.h
6905         [__powerpc64] (__arch_compare_and_exchange_val_64_acq): Define.
6906         [! __powerpc64] (__arch_compare_and_exchange_val_64_acq): Defined
6907         as abort stub.
6908         (__arch_compare_and_exchange_val_32_acq): Define.
6909         (atomic_compare_and_exchange_val_acq): Define.
6910
6911 2003-04-15  Ulrich Drepper  <drepper@redhat.com>
6912
6913         * include/atomic.h: Pretty printing.
6914
6915 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6916
6917         * stdio-common/vfscanf.c: Add casts to avoid warnings.
6918
6919 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6920
6921         * sysdeps/i386/i486/bits/atomic.h: Rename LOCK to LOCK_PREFIX.
6922         * sysdeps/x86_64/bits/atomic.h: Likewise.
6923
6924 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6925
6926         * sysdeps/unix/sysv/linux/i386/sysdep.h: Change PUSHARGS_1 and
6927         POPARGS_1 to emit labels for the mov instructions.
6928
6929 2003-04-14  Jakub Jelinek  <jakub@redhat.com>
6930
6931         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (ret_NOERRNO): Define.
6932
6933 2003-04-14  Roland McGrath  <roland@redhat.com>
6934
6935         * sysdeps/generic/unwind-dw2.c (_Unwind_GetCFA): Add a cast to silence
6936         compiler warning.
6937
6938         * sysdeps/generic/unwind-pe.h: Fix decl hacks broken in merge.
6939
6940 2003-04-14  Ulrich Drepper  <drepper@redhat.com>
6941
6942         * string/strxfrm.c (STRXFRM): Terminate rulearr at correct
6943         position.  Reported by jreiser@BitWagon.com.
6944
6945 2003-04-13  Ulrich Drepper  <drepper@redhat.com>
6946
6947         * sysdeps/generic/unwind-dw2-fde.c: Update from recent gcc version.
6948         * sysdeps/generic/unwind-dw2-fde.h: Likewise.
6949         * sysdeps/generic/unwind-dw2.c: Likewise.
6950         * sysdeps/generic/unwind-pe.h: Likewise.
6951
6952 2003-04-13  Alexandre Oliva  <aoliva@redhat.com>
6953
6954         * sysdeps/unix/sysv/linux/mips/profil-counter: New.
6955         * sysdeps/unix/sysv/linux/mips/sigcontextinfo.h: Port to n32/n64.
6956         * sysdeps/unix/sysv/linux/mips/bits/sigcontext.h: New.
6957         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Port to n32/n64.
6958         (mcontext_t): Make it match the 32-bit mips kernel in o32.
6959         * sysdeps/unix/sysv/linux/mips/sys/user.h: Bring in constants from
6960         the mips and mips64 headers.
6961         (struct user): Port to n32/n64.
6962
6963 2003-04-12  Ulrich Drepper  <drepper@redhat.com>
6964
6965         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add cast to
6966         avoid warning.
6967
6968         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): If
6969         __ASSUME_VSYSCALL is defined don't add restorer.
6970         * sysdeps/unix/sysv/linux/kernel-features.h: Define
6971         __ASSUME_VSYSCALL for 2.5.53.
6972
6973 2003-04-11  Ulrich Drepper  <drepper@redhat.com>
6974
6975         * sysdeps/generic/libc-start.c: Cleanup MAIN_AUXVEC_ARG handling.
6976         Remove HAVE_CANCELBUF code.  Replace with code using the new
6977         initializers for unwind-based cleanup handling.
6978         * sysdeps/generic/unwind.h: Update from latest gcc version.
6979         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define labels in a few
6980         places to allow unwind data generation.
6981         * sysdeps/i386/bits/setjmp.h: Allow file to be included multiple times.
6982         * sysdeps/x86_64/bits/setjmp.h: Likewise.
6983         * sysdeps/sh/bits/setjmp.h: Likewise.
6984         * sysdeps/powerpc/bits/setjmp.h: Likewise.
6985         * sysdeps/unix/sysv/linux/ia64/bits/setjmp.h: Likewise.
6986         * sysdeps/alpha/bits/setjmp.h: Likewise.
6987
6988 2003-04-11  Roland McGrath  <roland@redhat.com>
6989
6990         * csu/tst-empty.c: New file.
6991         * csu/Makefile (tests, tests-static): Add it.
6992
6993 2003-04-11  Jakub Jelinek  <jakub@redhat.com>
6994
6995         * string/test-strcmp.c (do_random_tests): Test whether return value
6996         has been promoted to wordsize if the ABI requires caller to do so.
6997         * string/test-strncmp.c (do_random_tests): Likewise.
6998         * string/test-memcmp.c (do_random_tests): Likewise.
6999
7000         * sysdeps/powerpc/powerpc64/strcmp.S (strcmp): Sign extend rRTN
7001         before returning.
7002
7003         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
7004         (__fe_nomask_env): Try prctl even if __ASSUME_NEW_PRCTL_SYSCALL
7005         is not defined, but the prctl constants are.
7006
7007         * string/tester.c (test_strcmp): Fix a typo.
7008
7009 2003-04-09  Ulrich Drepper  <drepper@redhat.com>
7010
7011         * sysdeps/alpha/fpu/bits/mathdef.h: Remove FLT_EVAL_METHOD definition.
7012         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
7013
7014 2003-04-08  Alexandre Oliva  <aoliva@redhat.com>
7015
7016         * sysdeps/mips/sys/regdef.h (t4,t5,t6,t7): Renamed to t0..t3 on
7017         NewABI.
7018         (ta0, ta1, ta2, ta3): Defined to t4..t7 on o32, and a4..a7 on
7019         NewABI.
7020         * sysdeps/mips/mips64/memcpy.S: Adjust register naming
7021         conventions.
7022         * sysdeps/mips/mips64/memset.S: Likewise.
7023         * sysdeps/unix/mips/sysdep.S (__syscall_error) [_LIBC_REENTRANT]:
7024         Use t0 instead of t4 as temporary.
7025
7026 2003-04-07  Ulrich Drepper  <drepper@redhat.com>
7027
7028         * elf/ldconfig.c (parse_conf): Ignore leading whitespace.  Use
7029         feof_unlocked instead of feof.
7030         (add_dir): Ignore trailing whitespace.
7031
7032 2003-04-07  Jakub Jelinek  <jakub@redhat.com>
7033
7034         * posix/bug-regex4.c (main): Cap RANGE and STOP arguments to
7035         sum of SIZE1 and SIZE2 arguments.
7036
7037 2003-04-06  Ulrich Drepper  <drepper@redhat.com>
7038
7039         * iconv/iconv_prog.c (process_block): Don't print message about
7040         invalid input if the -c option is used.
7041         (main): Correctly append IGNORE string for -c option.
7042
7043 2003-04-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7044
7045         * sysdeps/sh/bits/atomic.h: Moved to ...
7046         * sysdeps/unix/sysv/linux/sh/bits/atomic.h: ... here.  Add comments.
7047         (__arch_compare_and_exchange_val_*_acq): Add parens around macro
7048         arguments.
7049         (atomic_bit_set, atomic_bit_test_set): Likewise.
7050         (atomic_exchange_and_add): Likewise.  Don't evaluate VALUE argument
7051         twice.
7052         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7053
7054 2003-04-06  Roland McGrath  <roland@redhat.com>
7055
7056         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Rewrite register
7057         restoration as done for setcontext yesterday.
7058
7059 2003-04-06  Jakub Jelinek  <jakub@redhat.com>
7060
7061         * elf/rtld.c: Revert 2003-03-14 change.
7062         * elf/dl-conflict.c (_dl_resolve_conflicts): Move
7063         #if ! ELF_MACHINE_NO_RELA conditional into the routine.
7064
7065 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7066
7067         * sunrpc/xdr.c (xdr_string): Catch nodesize == 0 [PR libc/4999].
7068
7069         * sysdeps/ieee754/ldbl-96/e_gammal_r.c (__ieee754_gammal_r):
7070         Always initialize *signgamp before returning an error.
7071
7072 2003-04-05  Roland McGrath  <roland@redhat.com>
7073
7074         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
7075         below the stack pointer even if switching to the same context we are
7076         running right now.
7077
7078 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7079
7080         * catgets/gencat.c (read_input_file): Make sure that \n is not
7081         alone on the line before testing for continuation.
7082
7083         * math/test-tgmath.c (compile_test): Initialize c.
7084
7085 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
7086
7087         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
7088         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
7089         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
7090         on mips n32.
7091         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
7092         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
7093         structure on n32 as well.
7094         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
7095         data types on n32 and n64.
7096
7097 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
7098
7099         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
7100         after getting them.
7101
7102         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
7103         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
7104         instead of __register_atfork.
7105
7106 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
7107
7108         * stdio-common/reg-printf.c (__register_printf_function): Calloc
7109         instead of malloc __printf_arginfo_table and __printf_function_table.
7110         Reported by John Reiser <jreiser@BitWagon.com>.
7111
7112 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
7113
7114         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
7115         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
7116
7117         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
7118         defining.
7119
7120 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
7121
7122         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
7123         for n64 abi.
7124
7125 2003-04-03  Roland McGrath  <roland@redhat.com>
7126
7127         * configure.in: Fix up use of compilation flags to match the build:
7128         For .s files, $ASFLAGS;
7129         For .S files, $CPPFLAGS $ASFLAGS;
7130         For .c files, $CFLAGS $CPPFLAGS;
7131         when linking, add $LDFLAGS.
7132         * configure: Regenerated.
7133
7134 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
7135
7136         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
7137         for atomic_compare_and_exchange_bool_acq failure.
7138
7139 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
7140
7141         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
7142         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
7143         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
7144         Remove declaration of pthread_atfork.
7145
7146 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
7147
7148         * locale/iso-639.def: Add many more languages from the current ISO 639.
7149
7150         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
7151         * sysdeps/generic/semtimedop.c: New file.
7152         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
7153         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
7154         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
7155         * sysvipc/Makefile (routines): Add semtimedop.
7156         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
7157         * sysvipc/sys/sem.h: Declare semtimedop.
7158
7159 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
7160
7161         * configure.in: Check for __register_frame_info in both
7162         -lgcc and -lgcc_eh.
7163         * configure: Regenerated.
7164
7165 2003-04-01  Roland McGrath  <roland@redhat.com>
7166
7167         * scripts/abilist.awk: Allow dots in soname suffix.
7168
7169         * scripts/abilist.awk (emit): Fix bailout condition.
7170
7171 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7172
7173         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
7174         IA-64 version.
7175
7176         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
7177         register as input to asm.
7178
7179 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
7180
7181         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
7182
7183 2003-04-01  Andreas Jaeger  <aj@suse.de>
7184
7185         * configure.in: Output as/ld as name if version is too old.
7186
7187 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
7188
7189         * configure.in: Don't require an installed C library in the test
7190         for ".set" assembler support.
7191
7192 2003-03-31  Roland McGrath  <roland@redhat.com>
7193
7194         * signal/tst-sigset.c: New file.
7195         * signal/Makefile (tests): Add it.
7196
7197 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
7198
7199         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
7200         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
7201         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
7202         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
7203         (__SIGRTMAX): Adjust accordingly.
7204         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
7205         second compatibility symbol set.
7206         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
7207
7208 2003-03-31  Andreas Schwab  <schwab@suse.de>
7209
7210         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
7211         Define.
7212         (atomic_decrement_and_test): Fix test.
7213
7214 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
7215
7216         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
7217         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
7218         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
7219         * sysdeps/sparc/sparc32/atomicity.h: Removed.
7220         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
7221         * sysdeps/sparc/sparc64/atomicity.h: Removed.
7222
7223 2003-03-30  Roland McGrath  <roland@redhat.com>
7224
7225         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
7226
7227         * intl/po2test.sed: Anchor substitution regexps to fix last change.
7228
7229 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
7230
7231         * intl/po2test.sed: Unify the transformations for msgid and msgstr
7232         and remove a useless s/// command.
7233
7234 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7235
7236         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
7237         directive into empty .prologue region to ensure that call-chain
7238         is terminated even for the first instruction.
7239
7240         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
7241         to terminate call-chain right from the get-go.
7242
7243         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
7244         stop bit between compare & branch.
7245
7246 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
7247
7248         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
7249         point correctly [PR libc/4993].
7250
7251         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
7252         netlink_open calls if netlink is known to not be available.
7253
7254 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
7255
7256         * configure.in: Add mips64* support.
7257         * sysdeps/mips/bits/endian.h: Make it bi-endian.
7258         * sysdeps/mips/mipsel/bits/endian.h: Removed.
7259         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
7260         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
7261         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
7262         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
7263         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
7264         * sysdeps/mips/Implies: Moved wordsize-32 to...
7265         * sysdeps/mips/mips32/Implies: New file.
7266         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
7267         ret_NOERRNO): New.
7268         (ret, PSEUDO_END): Moved past END.
7269         (PSEUDO): Moved to...
7270         * sysdeps/unix/mips/mips32/sysdep.h: New file.
7271         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
7272         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
7273         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
7274         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
7275         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
7276
7277         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
7278         Re-introduce ENTRY.
7279
7280 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
7281
7282         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
7283         * inet/test-ifaddrs.c: Allow AF_PACKET.
7284         * sysdeps/unix/sysv/linux/kernel-features.h: Add
7285         __ASSUME_NETLINK_SUPPORT.
7286
7287 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
7288
7289         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
7290
7291 2003-03-26  H.J. Lu  <hjl@gnu.org>
7292
7293         * elf/vismod.h (getvarlocal1): Return const char **.
7294         (getvarinmod1): Likewise.
7295         (getvaritcpt1): Likewise.
7296         (getvarlocal2): Likewise.
7297         (getvarinmod2): Likewise.
7298         (getvaritcpt2): Likewise.
7299         (getvaritcpt3): Likewise.
7300         * elf/vismain.c (do_test): Adjusted.
7301         * elf/vismod1.c (getvarlocal1): Return address.
7302         (getvarinmod1): Likewise.
7303         (getvaritcpt1): Likewise.
7304         * elf/vismod2.c (getvarlocal2): Likewise.
7305         (getvarinmod2): Likewise.
7306         (getvaritcpt2): Likewise.
7307         * elf/vismod3.c (getvaritcpt3): Likewise.
7308
7309 2003-03-28  Roland McGrath  <roland@redhat.com>
7310
7311         * elf/vismain.c (do_test): Print both addresses when they don't match.
7312
7313         * scripts/abilist.awk: If given -v filename_regexp and/or -v
7314         libname_regexp when parsing names, then produce output only
7315         for those matching the given regexps.  In combine mode, save all
7316         stanzas for a final sorting by stanza header at the end.
7317         Emit a blank line between stanzas.
7318
7319         * scripts/abilist.awk: When given -v combine=1, do parse_names and
7320         emit a single output stream with lib name in stanza header lines.
7321
7322         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
7323
7324 2003-03-27  Roland McGrath  <roland@redhat.com>
7325
7326         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
7327         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
7328
7329 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7330
7331         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7332         Return old value. Make asm output reg constraint earlyclobber.
7333         Renamed from...
7334         (__arch_compare_and_exchange_8_acq): ... this.
7335         (__arch_compare_and_exchange_val_16_acq):
7336         Return old value. Make asm output reg constraint earlyclobber.
7337         Renamed from...
7338         (__arch_compare_and_exchange_16_acq): ... this.
7339         (__arch_compare_and_exchange_val_32_acq):
7340         Return old value. Make asm output reg constraint earlyclobber.
7341         Renamed from...
7342         (__arch_compare_and_exchange_32_acq): ... this.
7343         (__arch_compare_and_exchange_val_64_acq):
7344         Renamed from...
7345         (__arch_compare_and_exchange_64_acq): ... this.
7346         (atomic_exchange_and_add): Use local variables and
7347         __arch_compare_and_exchange_val_64_acq.
7348         (atomic_add): Likewise.
7349         (atomic_add_negative, atomic_add_zero): Use local variables.
7350
7351 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
7352
7353         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
7354
7355 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
7356
7357         * Makefile: Remove libmd5crypt goal.
7358
7359 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
7360
7361         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
7362         special handling of relocations against local symbols.
7363
7364 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
7365
7366         * sysdeps/powerpc/bits/atomic.h
7367         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
7368         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
7369         Define PPC64 specific version.
7370         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
7371         Change (mem) constraint to "b".
7372         [__powerpc64__] (__arch_atomic_exchange_and add_64):
7373         Replace addi with add. Change (value) contraint to "r".
7374         Change (mem) constraint to "b".
7375         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
7376         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
7377         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
7378         (__arch_atomic_decrement_if_positive_32): New macro.
7379         (atomic_decrement_if_positive): Use __arch* macros.
7380
7381 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7382
7383         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7384
7385 2003-03-27  Roland McGrath  <roland@redhat.com>
7386
7387         * scripts/rpm2dynsym.sh: New file.
7388         * Makefile (distribute): Add it.
7389
7390 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
7391
7392         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
7393         ar.unat before returning.  Add missing .mem.offset directives
7394         to ensure file gets assembled without warnings.
7395         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
7396
7397 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
7398
7399         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
7400         Return -1 instead of 0 if clock_getres failed.
7401
7402 2003-03-27  Roland McGrath  <roland@redhat.com>
7403
7404         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
7405         header lines and write out foo.symlist files for each foo.so.NN listed.
7406
7407         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
7408         This symbol is exported, and we don't want to hide it.
7409         Add libc_hidden_proto instead.
7410         (_IO_file_jumps): Add libc_hidden_proto.
7411         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
7412         Remove INTVARDEF.
7413         * libio/fileops.c (_IO_file_jumps): Likewise.
7414         * libio/stdfiles.c: Don't use INTUSE on them.
7415         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
7416         * libio/iofopen.c (__fopen_internal): Likewise.
7417         * libio/freopen.c (freopen): Likewise.
7418         * libio/freopen64.c (freopen64): Likewise.
7419         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
7420
7421         * Makerules (check-abi) [$(enable-check-abi) = warn]:
7422         Ignore exit status from diff.
7423         * configure.in (enable_check_abi): Document possible value "warn".
7424         Change default to no for now.
7425         * configure: Regenerated.
7426
7427         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
7428         macro calls and a #include <stub-tag.h> at the end.
7429         * Makerules ($(objpfx)stubs): Tweak sed commands.
7430
7431         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
7432         caller column for *xattr syscalls, since they are in sysdeps/generic.
7433
7434         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
7435         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
7436
7437 2003-03-26  Roland McGrath  <roland@redhat.com>
7438
7439         * Makerules (check-abi-config): Use /thread instead of /tls when
7440         use-thread and not just use-tls is set.
7441
7442         * Makerules (update-abi): Put quotes around $(update-abi-config).
7443
7444         * elf/Makefile (check-abi): Depend on check-abi-ld.
7445         (update-abi): Depend on update-abi-ld.
7446
7447 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7448
7449         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
7450         do not check for errors (unless testing for 32bit variant).
7451         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
7452
7453 2003-03-27  Philip Blundell  <philb@gnu.org>
7454
7455         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
7456         unconditional mov.  Remove nop.
7457
7458         * sysdeps/unix/sysv/linux/kernel-features.h
7459         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
7460         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
7461         when __ASSUME_VFORK_SYSCALL is defined.
7462         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
7463         __ASSUME_MMAP2_SYSCALL.
7464         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
7465         __ASSUME_REALTIME_SIGNALS.
7466
7467 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7468
7469         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
7470         only if DL_NO_COPY_RELOCS is not defined.
7471         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
7472
7473 2003-03-26  Roland McGrath  <roland@redhat.com>
7474
7475         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
7476         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
7477         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
7478         (sysdep_routines): Add stub-syscalls.
7479         ($(objpfx)stub-syscalls.c): New target.
7480         (generated): Add stub-syscalls.c.
7481
7482         * tls.make.c: Also define use-tls according to USE_TLS macro.
7483
7484 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7485
7486         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
7487         no-op padding element.
7488         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
7489         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7490         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7491         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7492
7493 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
7494
7495         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
7496         condition check for the return value of getgroups32.
7497
7498 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7499
7500         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
7501         Fix a typo.
7502         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
7503         PSEUDO_END_NOERRNO): Define.
7504         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
7505         Define to PSEUDO_END.
7506
7507 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
7508
7509         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
7510
7511 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
7512
7513         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
7514         * iconvdata/bug-iconv4.c: New file.
7515         * iconvdata/Makefile (tests): Add bug-iconv4.
7516
7517 2003-03-25  H.J. Lu  <hjl@gnu.org>
7518
7519         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
7520         symbols twice.
7521         (_dl_lookup_versioned_symbol): Likewise.
7522
7523 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
7524
7525         * csu/tst-atomic.c (do_test): Add some new
7526         atomic_compare_and_exchange_val_acq, atomic_add_zero,
7527         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
7528         * include/atomic.h (atomic_add_negative, atomic_add_zero):
7529         Prefix local variable so that it doesn't clash with the one
7530         in atomic_exchange_and_add.
7531         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
7532         pointers.
7533         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
7534         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
7535         value into register.
7536         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
7537         Cast newval to long.
7538         * sysdeps/x86_64/bits/atomic.h
7539         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
7540         long.
7541         (atomic_exchange): Cast newvalue to long if sizeof == 8.
7542         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
7543         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
7544         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
7545
7546 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
7547
7548         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
7549         bit from backtrace addresses.
7550
7551 2003-03-21  Andreas Schwab  <schwab@suse.de>
7552
7553         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
7554         __chown symbols.
7555
7556 2003-03-25  Roland McGrath  <roland@redhat.com>
7557
7558         * config.make.in (enable-check-abi): New variable from configure.
7559         * configure.in (enable_check_abi): New substituted variable,
7560         controlled by --{enable,disable}-check-abi (default yes).
7561         * configure: Regenerated.
7562         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
7563         on check-abi dependency.
7564
7565 2003-03-26  Andreas Schwab  <schwab@suse.de>
7566
7567         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
7568         * include/atomic.h: Likewise.
7569
7570         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
7571
7572 2003-03-25  Roland McGrath  <roland@redhat.com>
7573
7574         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
7575         (__arch_atomic_exchange_64): New macro.
7576         (atomic_exchange): Use them.
7577         (__arch_atomic_exchange_and_add_32): New macro.
7578         (__arch_atomic_exchange_and_add_64): New macro.
7579         (atomic_exchange_and_add): Use them.
7580         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
7581
7582 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
7583
7584         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
7585         Define.
7586         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
7587         ISA tests.
7588         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
7589         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
7590         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7591         to decide whether to add padding.
7592         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
7593         to decide whether to add padding.
7594         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
7595         old_kernel_sigaction): Likewise.
7596
7597 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
7598
7599         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
7600         atomic_add_zero were supposed to do.
7601         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
7602         to x86 behavior.
7603
7604         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
7605         This matches the new timer implementation.
7606         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
7607         Likewise.
7608         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
7609         Likewise.
7610         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
7611         timer info for what the kernel provides these days.
7612         (struct sigevent): Add _tid field.
7613         Define SIGEV_THREAD_ID.
7614         Remove struct __pthread_attr_s forward declaration.
7615         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
7616         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
7617         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
7618         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
7619
7620         * Versions.def (librt): Add GLIBC_2.3.3.
7621
7622         * abilist/libpthread.abilist: Update for nptl.
7623
7624 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
7625
7626         * inet/netinet/in.h: Add IPPROTO_SCTP.
7627
7628 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7629
7630         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
7631
7632 2003-03-24  Philip Blundell  <philb@gnu.org>
7633
7634         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
7635         Remove a1 from clobber list.
7636
7637 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
7638
7639         * timezone/antarctica: Update from tzdata2003a.
7640         * timezone/asia: Likewise.
7641         * timezone/australasia: Likewise.
7642         * timezone/europe: Likewise.
7643         * timezone/iso3166.tab: Likewise.
7644         * timezone/northamerica: Likewise.
7645         * timezone/southamerica: Likewise.
7646         * timezone/zone.tab: Likewise.
7647
7648 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
7649
7650         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
7651
7652 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
7653
7654         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
7655         unwanted expansion by definining to ret.  Patch by Ian Wienand.
7656
7657         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
7658         the parameter description to denote no error checking.  Generate
7659         appropriate pseudo asm code.
7660         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
7661         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
7662         getpgrp, and getppid with 'E'.
7663         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
7664         PSEUDO_END_NOERRNO, and ret_NOERRNO.
7665         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
7666         * sysdeps/unix/sysdep.h: Likewise.
7667         * sysdeps/unix/alpha/sysdep.h: Likewise.
7668         * sysdeps/unix/sparc/sysdep.h: Likewise.
7669         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
7670         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
7671         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
7672         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
7673         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
7674         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
7675         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
7676         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
7677         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
7678         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
7679         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
7680
7681 2003-03-23  Roland McGrath  <roland@redhat.com>
7682
7683         * Makeconfig (+includes): Don't use $(last-includes).
7684
7685 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7686
7687         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
7688         * sysdeps/unix/sysv/linux/configure: Rebuilt.
7689
7690 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
7691
7692         * sysdeps/alpha/fpu/libm-test-ulps: Update.
7693         * sysdeps/arm/libm-test-ulps: Update.
7694         * sysdeps/hppa/fpu/libm-test-ulps: Update.
7695         * sysdeps/ia64/fpu/libm-test-ulps: Update.
7696         * sysdeps/mips/fpu/libm-test-ulps: Update.
7697         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
7698         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
7699         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
7700         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
7701         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
7702         * sysdeps/s390/fpu/libm-test-ulps: Update.
7703         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
7704
7705 2003-03-22  Roland McGrath  <roland@redhat.com>
7706
7707         * include/atomic.h: Put parens around all macro arguments.
7708         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
7709         (atomic_compare_and_exchange_val_acq): Use it.
7710         (atomic_compare_and_exchange_bool_acq): Likewise.
7711         (atomic_increment_and_test): Invert sense of test.
7712         (atomic_decrement_and_test): Likewise.
7713         * csu/tst-atomic.c: Update those tests to match.
7714
7715 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
7716
7717         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
7718         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
7719         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
7720         __oldval variable in the macro, since it might be macro argument.
7721         (atomic_decrement_if_positive): Initialize __memp, remove setting
7722         of non-existent variable.
7723         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
7724         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
7725         using atomic_compare_and_exchange_val_acq.
7726         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
7727         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
7728         Renamed from...
7729         (__arch_compare_and_exchange_bool_8_acq): ... this.
7730         (__arch_compare_and_exchange_val_16_acq): Renamed from...
7731         (__arch_compare_and_exchange_bool_16_acq): ... this.
7732         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
7733         from...
7734         (__arch_compare_and_exchange_bool_32_acq): ... this.
7735         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
7736         from...
7737         (__arch_compare_and_exchange_bool_64_acq): ... this.
7738         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
7739         variables types instead of assuming int.
7740         Change prefix of local variables to __arch.
7741         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
7742         Remove.
7743         (atomic_compare_and_exchange_val_acq,
7744         atomic_compare_and_exchange_bool_acq): Define.
7745
7746         * csu/tst-atomic.c: New test.
7747         * csu/tst-atomic-long.c: New test.
7748         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
7749
7750         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
7751
7752         * sysdeps/s390/Versions: Add trailing newline.
7753
7754         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
7755         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
7756
7757 2003-03-22  Andreas Schwab  <schwab@suse.de>
7758
7759         * sysdeps/m68k/fpu/libm-test-ulps: Update.
7760
7761         * sysdeps/m68k/m68020/bits/atomic.h: New file.
7762         * sysdeps/m68k/m68020/atomicity.h: Removed.
7763
7764 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
7765
7766         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
7767         data structures and macros.  Protect from multiple inclusion.
7768
7769         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
7770         typo in #if test.
7771
7772 2003-03-21  Andreas Jaeger  <aj@suse.de>
7773
7774         * sysdeps/i386/fpu/libm-test-ulps: Update.
7775
7776         * math/libm-test.inc (tgamma_test): Recompute some constants with
7777         36 digits precision.
7778         (lgamma_test): Likewise.
7779         (ccos_test): Likewise.
7780         (ccosh_test): Likewise.
7781         (clog10_test): Likewise.
7782         (csin_test): Likewise.
7783         (csinh_test): Likewise.
7784         (ctan_test): Likewise.
7785         (ctanh_test): Likewise.
7786
7787 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
7788
7789         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
7790
7791 2003-03-21  Roland McGrath  <roland@redhat.com>
7792
7793         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
7794         constraint to permit non-constant BIT argument.
7795         (atomic_bit_test_set): Likewise.
7796         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
7797         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
7798         For quadword case, use "i" constraint if __builtin_constant_p and < 32
7799         or "r" constraint otherwise.
7800
7801         * configure.in: Move AC_PROG_CC and other program-finding before all
7802         the version checks.
7803         * configure: Regenerated.
7804
7805 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7806
7807         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
7808         unaligned copying of 8-15 bytes.  From Chris Demetriou
7809         <cgd@broadcom.com>.  Fix label names.
7810         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
7811         change as to memcpy.S.
7812         * sysdeps/mips/memcpy.S: Formatting changes.
7813         * sysdeps/mips/memset.S: Likewise.
7814
7815 2003-03-21  Roland McGrath  <roland@redhat.com>
7816
7817         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
7818
7819 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
7820
7821         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
7822         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
7823
7824 2003-03-21  Roland McGrath  <roland@redhat.com>
7825
7826         * sysdeps/i386/i486/bits/atomic.h
7827         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
7828         version of the macro to avoid compile-time warnings.
7829         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
7830         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
7831         (atomic_increment, atomic_decrement): Likewise.
7832
7833 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
7834
7835         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
7836         * sysdeps/i386/i486/bits/atomic.h: Likewise.
7837
7838 2003-03-21  Roland McGrath  <roland@redhat.com>
7839
7840         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
7841
7842 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7843
7844         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
7845         atomic_compare_and_exchange_val_rel,
7846         atomic_compare_and_exchange_bool_acq, and
7847         atomic_compare_and_exchange_bool_rel instead of
7848         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
7849         * sysdeps/i386/i486/bits/atomic.h: Define
7850         __arch_compare_and_exchange_val_*_acq instead of
7851         __arch_compare_and_exchange_*_acq.
7852         * sysdeps/x86_64/bits/atomic.h: Likewise.
7853         * sysdeps/ia64/bits/atomic.h: Define
7854         __arch_compare_and_exchange_bool_*_acq instead of
7855         __arch_compare_and_exchange_*_acq.
7856         * sysdeps/powerpc/bits/atomic.h: Likewise.
7857         * sysdeps/s390/bits/atomic.h: Likewise.
7858         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
7859         * malloc/set-freeres.c: Likewise.
7860         * nscd/cache.c: Likewise.
7861         * stdlib/cxa_finalize.c: Likewise.
7862         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7863
7864 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7865
7866         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
7867         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
7868         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
7869
7870         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
7871         into high and low halves on n64.
7872         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
7873         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
7874         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
7875
7876 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7877
7878         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
7879         correct atomic_compare_and_exchange_acq semantics.
7880
7881 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7882
7883         * sysdeps/mips/ieee754.h: Remove excess #endif.
7884
7885 2003-03-20  Roland McGrath  <roland@redhat.com>
7886
7887         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
7888         variable.  Remove superfluous memory clobber.
7889
7890         * include/atomic.h: Syntax braino fix.
7891
7892         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
7893         in decimal.  Don't bail if niced at start.  Just check that nice call
7894         bumps the total at all.
7895
7896 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7897
7898         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
7899         including pc, gp, sp and fp, as long long.
7900         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
7901         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
7902         Add gp argument, and set gp in the jmpbuf to it.
7903         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
7904
7905 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
7906
7907         * include/atomic.h: Define atomic_exchange and
7908         atomic_decrement_if_positive if not already defined.  Add some
7909         __builtin_expect.
7910         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
7911         * sysdeps/x86_64/bits/atomic.h: Likewise.
7912         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
7913         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
7914         atomic_exchange, atomic_exchange_and_add, and
7915         atomic_decrement_if_positive
7916
7917 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
7918
7919         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
7920         with a single instruction.
7921
7922         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
7923         properly for n64.
7924         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
7925         type.
7926         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
7927         Word before comparing with gotsym.  Take reloc_addr argument as
7928         void*.  Remove the code added for the compiler to drop any
7929         alignment assumptions.
7930
7931 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7932
7933         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
7934         * include/atomic.h: New file.
7935         * sysdeps/i386/i486/bits/atomic.h: New file.
7936         * sysdeps/x86_64/bits/atomic.h: New file.
7937         * sysdeps/s390/bits/atomic.h: New file.
7938         * sysdeps/sh/bits/atomic.h: New file.
7939         * sysdeps/ia64/bits/atomic.h: New file.
7940         * sysdeps/powerpc/bits/atomic.h: New file.
7941         * sysdeps/generic/bits/atomic.h: New file.
7942         * sysdeps/i386/i486/atomicity.h: Removed.
7943         * sysdeps/x86_64/atomicity.h: Removed.
7944         * sysdeps/s390/s390-32/atomicity.h: Removed.
7945         * sysdeps/s390/s390-64/atomicity.h: Removed.
7946         * sysdeps/ia64/atomicity.h: Removed.
7947         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
7948         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
7949         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
7950         use of macros from atomicity.h to new names and semantics.
7951         * gmon_mcount.c: Likewise.
7952         * malloc/set-freeres.c: Likewise.
7953         * nscd/cache.c: Likewise.
7954         * stdlib/cxa_finalize.c: Likewise.
7955         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
7956
7957 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
7958
7959         * sysdeps/mips/ieee754.h: New file, suitable to replace both
7960         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
7961         mips-specific for now.
7962
7963 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
7964
7965         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
7966         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
7967         * stdlib/tst-strtod.c: Add test for the bug.
7968
7969         * posix/tst-nice.c (do_test): Remove invalid of return value.
7970         Don't run test if initial level != 0.
7971
7972 2003-03-19  Amos Waterland  <apw@us.ibm.com>
7973
7974         * posix/tst-nice.c: New file.
7975         * posix/Makefile (tests): Add tst-nice.
7976
7977 2003-03-18  Roland McGrath  <roland@redhat.com>
7978
7979         * abilist: New directory of libfoo.abilist files maintained using
7980         scripts/merge-abilist.awk and "make update-abi" rules.
7981         * Makefile (distribute): Add abilist/*.abilist.
7982         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
7983         Depend on check-abi.
7984
7985         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
7986         * configure: Regenerated.
7987
7988         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
7989
7990 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
7991
7992         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
7993         correctly.
7994
7995 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
7996
7997         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
7998
7999 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
8000
8001         * Versions.def: Add GLIBC_2.3.3 for libpthread.
8002
8003 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
8004
8005         * sysdeps/generic/libc-start.c [!SHARED &&
8006         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
8007
8008 2003-03-17  Roland McGrath  <roland@redhat.com>
8009
8010         * include/ctype.h: Revert last change.
8011
8012 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
8013
8014         * argp/tst-argp1.c: Use test-skeleton.c.
8015         * locale/tst-C-locale.c: Likewise.
8016
8017 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
8018
8019         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
8020         * sysdeps/mips/mips64/n64/Implies: New file.
8021         * sysdeps/mips/mips64/n64/Makefile: New file.
8022         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
8023         * sysdeps/mips/mips64/n32/Implies: New file.
8024         * sysdeps/mips/mips64/n32/Makefile: New file.
8025         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
8026         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
8027         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
8028         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
8029         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
8030         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
8031         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
8032         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
8033         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
8034         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
8035         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
8036         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
8037         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
8038         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
8039
8040         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
8041         lib64 for mips64/n64 and lib32 for mips64/n32.
8042         (ldd_rewrite_script): Needed for all mips64 configurations.
8043         * sysdeps/unix/sysv/linux/configure: Rebuilt.
8044         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
8045         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
8046
8047         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
8048         well.
8049
8050         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
8051         asm/unistd.h into asm-unistd.h.
8052         * sysdeps/unix/sysv/linux/mips/configure: Generated.
8053         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
8054         of syscall list.
8055         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
8056         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
8057         asm/unistd.h.
8058
8059         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
8060         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
8061         long type for registers on n32.
8062
8063         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
8064         3 ABIs.
8065         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
8066         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
8067         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
8068         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
8069         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
8070         * sysdeps/unix/mips/brk.S: Likewise.
8071         * sysdeps/unix/mips/sysdep.S: Likewise.
8072         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8073         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
8074         * sysdeps/mips/sys/ucontext.h: Likewise.
8075         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
8076         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
8077         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
8078         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
8079         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
8080         * sysdeps/mips/mips64/setjmp.S: Likewise.
8081         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
8082         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
8083         64-bit types.
8084
8085 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
8086
8087         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
8088         not at function level.
8089         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
8090
8091 2003-03-15  Roland McGrath  <roland@redhat.com>
8092
8093         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
8094         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
8095         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
8096         * nis/nis_table.c (__create_ib_request): Likewise.
8097
8098         * posix/fnmatch_loop.c: Add casts for signedness.
8099         * nss/nss_files/files-hosts.c: Likewise.
8100         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
8101         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
8102         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
8103
8104         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
8105         get errors into the log file.
8106         (libc_cv_broken_visibility_attribute): Likewise.
8107         (libc_cv_broken_alias_attribute): Likewise.
8108         (libc_cv_asm_weak_directive): Likewise.
8109         (libc_cv_need_minus_P): Likewise.
8110         (libc_cv_dot_text): Likewise.
8111         (libc_cv_asm_global_directive): Likewise.
8112         (libc_cv_asm_type_prefix): Likewise.
8113         * configure: Regenerated.
8114
8115         * nscd/cache.c (cache_search): Give first arg type `request_type'.
8116         * nscd/nscd.h: Update decl.
8117
8118         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
8119         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
8120         * elf/dl-close.c (_dl_close): Likewise.
8121         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
8122         * io/fts.c (fts_build): Likewise.
8123         * elf/cache.c (add_to_cache): Likewise.
8124         * locale/programs/locarchive.c (show_archive_content): Likewise.
8125
8126         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
8127
8128         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
8129         happy.
8130         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
8131
8132 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
8133
8134         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
8135         code for most parts.
8136
8137 2003-03-15  Roland McGrath  <roland@redhat.com>
8138
8139         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
8140         * sysdeps/unix/sysv/linux/system.c: ... here.
8141         (FORK): Don't #define if already #define'd.
8142         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
8143         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
8144         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
8145
8146         * dlfcn/tst-dlinfo.c: New file.
8147         * dlfcn/Makefile (tests): Add tst-dlinfo.
8148         ($(objpfx)tst-dlinfo): New target.
8149
8150         * dlfcn/dlinfo.c: New file.
8151         * dlfcn/Makefile (libdl-routines): Add it.
8152         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
8153         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
8154         [__USE_GNU] (RTLD_DI_*): New enum constants.
8155         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
8156         * elf/dl-load.c (cache_rpath): New inline function.
8157         (_dl_map_object): Use it.
8158         (_dl_rtld_di_serinfo): New function.
8159         * sysdeps/generic/ldsodefs.h: Declare it.
8160         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
8161
8162         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
8163         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
8164         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
8165         (__libc_start_main): Just call the generic one for most of the work.
8166
8167         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
8168         static function by that name instead of BP_SYM (__libc_start_main).
8169         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
8170         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
8171         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
8172
8173         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
8174         Use this macro for extra AT_* cases.
8175         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
8176         New macro, guts from ...
8177         (__aux_init_cache): ... here, function removed.
8178         (DL_PLATFORM_INIT): Don't define this.
8179
8180         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
8181         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
8182
8183         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
8184
8185 2003-03-14  Roland McGrath  <roland@redhat.com>
8186
8187         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
8188
8189 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
8190
8191         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
8192
8193         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
8194         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
8195
8196 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
8197
8198         * sysdeps/mips/fpu/bits/mathdef.h: New.
8199         (__NO_LONG_DOUBLE_MATH): Define for o32.
8200
8201         * sysdeps/mips/sys/asm.h: Formatting changes.
8202         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
8203         (CPADD): Define for all of them.
8204         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
8205         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
8206         NARGSAVE): Define per ABI spec.
8207         (END): Don't redefine.
8208         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
8209         LONG_SRAV): Remove duplicate definitions.
8210         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
8211         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
8212         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
8213         (PTR_LA): Define for all 3 ABIs.
8214
8215         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
8216         (elf_machine_matches_host): Prevent linking of o32 and n32
8217         together.
8218         (elf_machine_dynamic): Document assumption on $gp.
8219         (STRINGXP, STRINGXV, STRINGV_): New macros.
8220         (elf_machine_load_address): Use them to stringize PTR_LA and
8221         PTR_SUBU.
8222         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
8223         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
8224         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
8225         (__dl_runtime_resolve): Cast the symtab initializer to the
8226         right type.
8227         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
8228         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
8229         Handle 64-bit R_MIPS_REL composite relocation and accept
8230         R_MIPS_64 relocations to shift addend size to 64 bits.
8231         Document assumption regarding local GOT entries.  Document
8232         backward-compatibility departing from the ABI behavior in
8233         applying relocations that reference section symbols, no longer
8234         used.  Support relocations to mis-aligned offsets.
8235         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
8236
8237         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
8238
8239         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
8240         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
8241         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
8242         restore_rt functions.  Use them.
8243
8244         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
8245         .set mips2 on new abis.
8246
8247 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
8248
8249         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
8250         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
8251         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
8252         * sysdeps/posix/pathconf.c: Likewise.
8253         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
8254         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
8255         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
8256
8257         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
8258         words.
8259
8260 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
8261
8262         * include/gmp.h: Include/gmp-mparam.h.
8263         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
8264         gmp-impl.h.
8265
8266         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
8267         ELF_MACHINE_NO_RELA is set.
8268         * elf/rtld.c (dl_main): No prelink support for REL-only.
8269
8270         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
8271         FLAG_MIPS64_LIBN64): Define.
8272         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
8273
8274         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
8275         * sysdeps/mips/memset.S: Likewise.
8276         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
8277         depending on the ABI.
8278
8279         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
8280         Don't .set mips2 on new abi.
8281         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
8282
8283         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
8284
8285 2003-03-13  Roland McGrath  <roland@redhat.com>
8286
8287         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
8288         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
8289
8290 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
8291
8292         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
8293         literals long long.
8294         * stdlib/fpioconst.c: Likewise.
8295         * stdlib/strtod.c: Likewise.
8296
8297         * sysdeps/mips/add_n.S: Use L macro for local labels.
8298         * sysdeps/mips/addmul_1.S: Likewise.
8299         * sysdeps/mips/lshift.S: Likewise.
8300         * sysdeps/mips/memcpy.S: Likewise.
8301         * sysdeps/mips/memset.S: Likewise.
8302         * sysdeps/mips/mul_1.S: Likewise.
8303         * sysdeps/mips/rshift.S: Likewise.
8304         * sysdeps/mips/sub_n.S: Likewise.
8305         * sysdeps/mips/submul_1.S: Likewise.
8306         * sysdeps/mips/mips64/add_n.S: Likewise.
8307         * sysdeps/mips/mips64/addmul_1.S: Likewise.
8308         * sysdeps/mips/mips64/lshift.S: Likewise.
8309         * sysdeps/mips/mips64/mul_1.S: Likewise.
8310         * sysdeps/mips/mips64/rshift.S: Likewise.
8311         * sysdeps/mips/mips64/sub_n.S: Likewise.
8312         * sysdeps/mips/mips64/submul_1.S: Likewise.
8313         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
8314         conventions.  Define END as in sys/asm.h.
8315         * sysdeps/unix/mips/sysdep.S: Likewise.
8316         * sysdeps/unix/mips/wait.S: Likewise.
8317         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
8318
8319         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
8320         Cast shifted values that may be too narrow to mp_limb_t.
8321         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
8322         Likewise.
8323         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
8324         Likewise.
8325         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
8326         (__mpn_extract_long_double): Likewise.
8327         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
8328         (__mpn_construct_long_double): Likewise.
8329         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
8330         (__mpn_extract_long_double): Likewise.
8331         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
8332         (__mpn_construct_long_double): Likewise.
8333
8334 2003-03-13  Roland McGrath  <roland@redhat.com>
8335
8336         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
8337         entries in the map file match too.
8338
8339 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
8340
8341         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
8342         label .Lthread_start since current binutils don't allow branches
8343         to globally visible symbols.
8344
8345 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
8346
8347         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
8348         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
8349         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
8350         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
8351         clobbered by the syscall.
8352         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
8353         ASM_ARGS_6): Change constraints from r to index of corresponding
8354         output register.
8355         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
8356         ptid and ctid to match kernel.
8357         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
8358
8359 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
8360
8361         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
8362         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
8363         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
8364
8365 2003-03-11  Roland McGrath  <roland@redhat.com>
8366
8367         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
8368         Check SYM_MAP rather than SYM as definedness check.
8369         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
8370         Don't handle R_PPC64_REL24 reloc.
8371         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8372
8373         * sysdeps/powerpc/powerpc64/dl-machine.h
8374         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
8375         block, so we cover all the TPREL16* flavors without 6 ||s.
8376         [USE_TLS] (elf_machine_tprel): New function.
8377         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
8378         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
8379         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
8380
8381 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
8382
8383         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
8384         instead of jalr to invoke subroutine so restoring the $gp register
8385         will work properly.
8386
8387 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8388
8389         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
8390         to __NR_pread if not defined.
8391         (__NR_pwrite64): Define to __NR_pwrite if not defined.
8392
8393 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8394
8395         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
8396         * sysdeps/unix/sysv/linux/kernel-features.h
8397         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
8398         kernel >= 2.5.64.
8399
8400 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
8401
8402         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
8403         allocate space even for the trailing '/'.
8404         Reported by John Reiser <jreiser@BitWagon.com>.
8405
8406         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
8407         ASM_CLOBBERS_6): Define.
8408         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
8409         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
8410         to match IA-32 order.
8411         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
8412
8413 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
8414
8415         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
8416         Copy extra params for NPTL to registers used in clone syscall.
8417
8418 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8419
8420         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
8421         call names for pread and pwrite.
8422
8423 2003-03-10  Roland McGrath  <roland@redhat.com>
8424
8425         * dlfcn/Makefile (libdl-routines): Add dladdr1.
8426         * dlfcn/dladdr1.c: New file.
8427         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
8428         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
8429         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
8430         a const ElfNN_Sym ** to fill in.
8431         * include/dlfcn.h: Update decl.  Include <link.h>.
8432         * dlfcn/dladdr.c (dladdr): Update caller.
8433         * malloc/mtrace.c (tr_where): Likewise.
8434         * sysdeps/generic/elf/backtracesyms.c: Likewise.
8435         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
8436         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
8437         * Versions.def (libdl): Define GLIBC_2.3.3 set.
8438
8439         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
8440         assembler command.
8441         * sysdeps/unix/Makefile (compile-syscall): New variable.
8442         Pass -g0 to compiler for assembling syscall stubs from stdin.
8443
8444         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
8445         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
8446         Define these to do nothing.
8447
8448         * configure.in: New check for -g on .S files.
8449         * configure: Regenerated.
8450         * config.make.in (have-cpp-asm-debuginfo): New variable.
8451         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
8452         * Makeconfig (ASFLAGS): New variable, if undefined and
8453         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
8454         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
8455
8456 2003-03-09  Roland McGrath  <roland@redhat.com>
8457
8458         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
8459         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
8460
8461 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
8462
8463         * po/fi.po: Update from translation team.
8464         * po/ca.po: Likewise.
8465         * po/da.po: Likewise.
8466
8467 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
8468
8469         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
8470
8471 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
8472
8473         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
8474
8475         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
8476
8477 2003-03-07  Roland McGrath  <roland@redhat.com>
8478
8479         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
8480         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
8481
8482 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
8483
8484         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
8485         stubs, we have INLINE_SYSCALL.
8486         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
8487         MAP_NONBLOCK.
8488
8489 2003-03-06  Roland McGrath  <roland@redhat.com>
8490
8491         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
8492         permanent extent and add a comment about testing its implicit teardown.
8493
8494 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8495
8496         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
8497
8498 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
8499
8500         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
8501         reversed __builtin_expect expectation.
8502
8503 2003-03-05  Roland McGrath  <roland@redhat.com>
8504
8505         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
8506         * libio/swscanf.c: Likewise.
8507         * libio/swprintf.c: Likewise.
8508
8509 2003-03-04  Roland McGrath  <roland@redhat.com>
8510
8511         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
8512         (elf_machine_rela): Always use RESOLVE_MAP, needed for
8513         R_PPC64_JMP_SLOT as well as TLS cases.
8514         (BIT_INSERT): Move parenthesis where it ought to have been.
8515         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
8516
8517         * posix/confstr.c (confstr): Correct STRING_LEN values for
8518         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
8519         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
8520
8521 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
8522
8523         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
8524
8525 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
8526
8527         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
8528         clone parameters.
8529
8530         * po/sv.po: Update from translation team.
8531
8532 2003-03-04  Andreas Jaeger  <aj@suse.de>
8533             Ulrich Drepper  <drepper@redhat.com>
8534
8535         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
8536
8537 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8538
8539         * sysdeps/generic/dl-sysdep.h: Add double include protection.
8540
8541         * po/tr.po: Update from translation team.
8542
8543         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
8544         are holes between the segments.  Only call mprotect to set
8545         proection to PROT_NONE if there are some.
8546
8547         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
8548         Update comment.
8549
8550         * include/sched.h (__clone2): Use ... instead of adding all the
8551         new parameters.
8552
8553 2003-03-03  Roland McGrath  <roland@redhat.com>
8554
8555         * elf/dl-load.c (struct filebuf): Fix typo in last change.
8556
8557         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
8558         PI_STATIC_AND_HIDDEN.
8559
8560 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
8561
8562         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
8563         flags.
8564         * include/sched.h: Update clone2 prototype.
8565
8566 2003-03-03  Andreas Jaeger  <aj@suse.de>
8567
8568         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
8569         (llrint): Use it to correct return type.
8570         (lrint): Likewise.
8571         (lround): Likewise.
8572         (llround): Likewise.
8573
8574 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8575
8576         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
8577         byte filebuf size.
8578
8579         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
8580         if ccs parameter isn't valid.  Reported by Andreas Schwab.
8581
8582 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8583
8584         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
8585         for system call numbers > 255.
8586         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
8587         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8588         INTERNAL_SYSCALL): Likewise.
8589         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
8590         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
8591         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
8592         INTERNAL_SYSCALL): Likewise.
8593
8594 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
8595
8596         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
8597         array if it is the initial dtv.
8598
8599 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
8600
8601         * po/es.po: Update from translation team.
8602         * po/fr.po: Likewise.
8603         * po/gl.po: Likewise.
8604         * po/sk.po: Likewise.
8605         * po/sv.po: Likewise.
8606
8607         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
8608         * misc/sys/mman.h: Add prototype for remap_file_pages.
8609         * sysdeps/generic/remap_file_pages.c: New file.
8610         * misc/Makefile (routines): Add remap_file_pages.
8611         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
8612
8613         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
8614         and MAP_NONBLOCK.
8615         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
8616         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
8617         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
8618         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
8619         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
8620         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
8621         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
8622         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
8623
8624 2003-03-03  Roland McGrath  <roland@redhat.com>
8625
8626         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
8627         * sysdeps/ia64/dl-machine.h: Likewise.
8628         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
8629         argument type.
8630         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
8631
8632         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
8633         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
8634         * locale/Versions (libc: GLIBC_2.3): Move those to ...
8635         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
8636         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
8637         * Versions.def (libc): Add GLIBC_2.3.3 set.
8638
8639         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
8640         * sysdeps/ia64/dl-machine.h: Update decl.
8641
8642 2003-03-03  Andreas Jaeger  <aj@suse.de>
8643
8644         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
8645
8646 2003-03-02  Roland McGrath  <roland@redhat.com>
8647
8648         * scripts/abilist.awk: Reject data items with apparent 0 size.
8649
8650         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
8651         after foo.* as if it were a duplicate.
8652
8653         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
8654
8655 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
8656
8657         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
8658
8659         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
8660         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
8661         if not already defined.  Use SYSDEP_GETRES to allow other files to
8662         provide alternative implementations.
8663         * sysdeps/unix/sysv/linux/clock_getres.c: New file
8664         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
8665         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8666         provide alternative implementations.
8667         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
8668         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
8669         if not already defined.  Use SYSDEP_GETTIME to allow other files to
8670         provide alternative implementations.
8671         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
8672         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
8673         other files to provide alternative implementations.  Rearrange
8674         tests for invalid parameters.
8675         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
8676         * sysdeps/unix/sysv/linux/sysconf.c: New file.
8677         * sysdeps/unix/sysv/linux/kernel-features.h: Define
8678         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
8679         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
8680         _POSIX_MONOTONIC_CLOCK.
8681
8682 2003-03-02  Roland McGrath  <roland@redhat.com>
8683
8684         * scripts/merge-abilist.awk: More checks for bogus input.
8685         Uniquify duplicate config names.
8686
8687         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
8688
8689         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
8690         from dl_reloc_overflow, make global.
8691         (__process_machine_rela): Update callers.
8692         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
8693         Add attribute_hidden to __process_machine_rela decl.
8694         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
8695
8696         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
8697         variable.
8698
8699         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
8700         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
8701         (elf_machine_rela): Clean up.
8702
8703         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
8704
8705         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
8706         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
8707         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
8708         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
8709         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
8710         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
8711         new relocs for TLS.
8712
8713         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
8714         macros out of [SHARED].
8715         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
8716
8717         * elf/elf.h: Define R_PPC_* relocs for TLS support.
8718         Clean up R_PPC64_* macro definition comments.
8719
8720         * configure.in: In "running configure fragment for" message,
8721         omit $srcdir from the name if we prepended it.
8722         * configure: Regenerated.
8723
8724         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
8725         From Jakub Jelinek <jakub@redhat.com>.
8726
8727         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
8728         which duplicated the O_DIRECT defn.
8729
8730 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8731
8732         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
8733         random functions.
8734
8735 2003-03-01  Andreas Schwab  <schwab@suse.de>
8736
8737         * resolv/Makefile (tests): Don't depend on
8738         $(objpfx)mtrace-tst-leaks when cross compiling.
8739
8740         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
8741         __libc_stack_end through GOT since it is a global symbol.
8742
8743 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8744
8745         * argp/argp.h: Fix a typo.
8746         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
8747
8748         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
8749
8750 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
8751
8752         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
8753         char *.
8754         (get_subexp): Likewise.
8755
8756 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
8757
8758         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
8759
8760 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8761
8762         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
8763
8764 2003-02-27  Roland McGrath  <roland@redhat.com>
8765
8766         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
8767         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
8768         repeat it and avoids the test for the common case.
8769         Clean up and fix calculations for TLS relocs.
8770
8771         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
8772         * sysdeps/powerpc/dl-tls.h: ... here.
8773         (TLS_TP_OFFSET): New macro.
8774
8775         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
8776
8777 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8778
8779         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
8780         code generation changes in recent gcc.
8781
8782 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
8783
8784         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
8785         Rename argument to avoid symbol conflict.
8786
8787         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
8788         [__USE_GNU] (O_DIRECT): New macro.
8789
8790 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
8791
8792         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
8793         unwind info.
8794
8795 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
8796
8797         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
8798         initializer anymore now that res_thread_freeres is more careful.
8799
8800         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
8801         except the PKTINFO.  Reset interface in PKTINFO.
8802         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
8803
8804 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
8805
8806         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
8807         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
8808         Define.
8809         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
8810         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
8811         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
8812         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
8813
8814         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
8815         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
8816
8817 2003-02-25  Andreas Jaeger  <aj@suse.de>
8818
8819         * manual/memory.texi (Malloc Tunable Parameters): Clarify
8820         behaviour of M_MMAP_THRESHOLD.
8821
8822 2003-02-25  Roland McGrath  <roland@redhat.com>
8823
8824         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
8825         zero, inidicating _res was not initialized yet.
8826
8827 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
8828
8829         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
8830         test.
8831
8832 2003-02-24  Roland McGrath  <roland@redhat.com>
8833
8834         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
8835
8836 2003-02-23  Roland McGrath  <roland@redhat.com>
8837
8838         * sysdeps/posix/pause.c: New file.
8839         * sysdeps/unix/common/pause.c: File removed.
8840
8841 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
8842
8843         * sysdeps/generic/bits/confname.h: Remove #ifs.
8844
8845         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
8846         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
8847
8848         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
8849         element to -1.
8850
8851 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8852
8853         * sysdeps/generic/dl-sysdep.c: Avoid warning.
8854
8855 2003-02-22  Roland McGrath  <roland@redhat.com>
8856
8857         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
8858         * resolv/Makefile (tests): Add tst-leaks.
8859         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
8860         (tst-leaks-ENV): New variable.
8861         ($(objpfx)mtrace-tst-leaks): New target.
8862         (tests): Depend on it.
8863
8864         * include/libc-internal.h: Declare __libc_thread_freeres.
8865
8866         * Makerules: Fix last change to use $($(subdir)-version) when set.
8867
8868         * Makerules (install-lib-nosubdir): Depend on installed
8869         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
8870         regardless of the libfoo.so target's dependencies.
8871
8872         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
8873         Use that in $(MAKE) calls.
8874
8875 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
8876
8877         * catgets/gencat.c (read_input_file): Collision between
8878         auto-assigned numbers and user-defined nubmers is not fatal.
8879         Handle it.
8880         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
8881         * catgets/Makefile: Add rules to run test2.msg test.
8882         * catgets/test2.msg: New file.
8883
8884         * catgets/gencat.c (main): Return 1 if messages have been printed.
8885
8886         * iconv/iconv_prog.c (main): Unify messages.
8887
8888         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
8889         when shifting retval.
8890         * stdlib/tst-strtod.c (main): Add strtold test case.
8891         Reported by Fred J. Tydeman <tydeman@tybor.com>.
8892
8893 2003-02-21  Roland McGrath  <roland@redhat.com>
8894
8895         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
8896         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
8897         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
8898
8899         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
8900         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
8901         (res_thread_freeres): New function, on __libc_thread_subfreeres and
8902         __libc_subfreeres.
8903
8904         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
8905         * malloc/thread-freeres.c: New file.
8906         * malloc/Makefile (aux): Add it.
8907         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
8908         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
8909         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
8910
8911         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
8912         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
8913
8914 2003-02-21  Roland McGrath  <roland@frob.com>
8915
8916         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
8917
8918         * iconvdata/Makefile (tests): Add bug-iconv3 only if
8919         [$(have-thread-library) = yes].
8920
8921 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
8922
8923         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
8924
8925         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
8926         not chechk for errors (unless testing for 32bit variant).
8927         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
8928         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
8929         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
8930
8931 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
8932
8933         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
8934         Check for signed overflow, not unsigned.
8935
8936         * sysdeps/sparc/sparc64/elf/configure.in: New file.
8937         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
8938         Use -fcall-used-g6, not -fcall-used-g7.
8939
8940 2003-02-21  Andreas Jaeger  <aj@suse.de>
8941
8942         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
8943         mode.
8944
8945         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
8946         clear whole mxcsr but only exceptions.
8947
8948 2003-02-21  Roland McGrath  <roland@redhat.com>
8949
8950         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
8951         for libfoo.so that need $(make-link) rules.
8952
8953 2003-02-21  Roland McGrath  <roland@frob.com>
8954
8955         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
8956         to match existing struct stat layout in mig protocols.
8957
8958 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8959
8960         * version.h (VERSION): Bump to 2.3.2.
8961
8962         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
8963         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
8964         and dl-sysdep.h.
8965         * sysdeps/generic/Dist: Add sysdep-cancel.h.
8966         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
8967         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
8968         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
8969         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
8970         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
8971         ucontext_i.h.
8972         * Makefile (distribute): Add include/stubs-prologue.h,
8973         include/gnu/stubs.h, scripts/merge-abilist.awk, and
8974         scripts/extract-abilist.awk.
8975
8976 2003-02-20  Roland McGrath  <roland@redhat.com>
8977
8978         * math/Makefile (distribute): Don't add generated files.
8979
8980 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8981
8982         * math/Makefile: Rearrange variable definitions slightly to get
8983         definition in the right order.
8984
8985 2003-02-20  Roland McGrath  <roland@redhat.com>
8986
8987         * Makerules: Clean up conditional around include of tls.make.
8988         * Make-dist: Export generating=t to prevent using that.
8989         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
8990
8991 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
8992
8993         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
8994         around in search if port IPPORT_RESERVED/2 has been test.
8995
8996 2003-02-20  Paolo Bonzini  <bonzini@gnu.org>
8997
8998         * posix/regcomp.c: Remove inclusions.
8999         * posix/regexec.c: Likewise.
9000         * posix/regex_internal.c: Likewise.
9001         * posix/regex_internal.h: Add inclusions here.
9002         * posix/regex.c: Only include sys/types.h before regex.h.  Include
9003         regex_internal.h here.  Include regex_internal.c before regcomp.c
9004         and regexec.c (might expose more opportunities to the C compiler).
9005
9006         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
9007
9008         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
9009         [!_LIBC] (__wcrtomb): New definition.
9010         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
9011         HAVE_LOCALE_H as well.
9012
9013 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
9014
9015         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
9016         patch to check for system call errors.
9017
9018 2002-07-24  Philip Blundell  <philb@gnu.org>
9019
9020         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
9021         on unknown systems.
9022
9023 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9024
9025         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
9026         * sysdeps/unix/sysv/linux/kernel-features.h
9027         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
9028         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
9029         if possible.
9030         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
9031         interprocedure branches.
9032         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
9033         * sysdeps/powerpc/nofpu/Dist: ...here.
9034         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
9035         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
9036         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
9037         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
9038         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
9039
9040 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
9041
9042         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
9043
9044 2003-02-20  Philip Blundell  <philb@gnu.org>
9045
9046         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
9047         missing arguments to INTERNAL_SYSCALL_ERROR_P and
9048         INTERNAL_SYSCALL_ERRNO.
9049
9050 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9051
9052         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
9053         for __ASSUME_32BITUIDS.
9054
9055 2003-02-20  Andreas Schwab  <schwab@suse.de>
9056
9057         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
9058         POSIX_MADV_* constants.
9059
9060 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9061
9062         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
9063         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
9064         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
9065         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
9066
9067 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
9068
9069         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
9070
9071 2003-02-16  Roland McGrath  <roland@redhat.com>
9072
9073         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
9074
9075 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
9076
9077         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
9078         decimal input digits.
9079         * stdlib/tst-strtod.c (main): Add test for strtof bug.
9080
9081 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
9082
9083         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
9084         invalid file descriptors and missing access permissions.
9085
9086 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
9087
9088         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
9089         been found.
9090
9091         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
9092         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
9093         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
9094         and LOGIN_NAME_MAX.
9095
9096 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
9097             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9098
9099         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
9100         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
9101         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
9102         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
9103         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
9104
9105 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9106
9107         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
9108         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
9109         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
9110         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
9111         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
9112         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
9113
9114         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
9115         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
9116         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
9117         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
9118
9119         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
9120         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
9121         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
9122         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
9123
9124 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
9125
9126         * nss/getent.c (print_hosts): Print all IP addresses of one host.
9127
9128 2003-02-15  Roland McGrath  <roland@frob.com>
9129
9130         * sysdeps/mach/hurd/tls.h: New file.
9131         * sysdeps/mach/hurd/i386/tls.h: New file.
9132
9133         * mach/errsystems.awk: Include <errno.h> in generated output.
9134
9135         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
9136         use target mach-before-compile instead of generated.
9137         (mach-before-compile): New target.
9138         * Makerules: Disable use of tls.make if $(generating) is set.
9139         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
9140         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
9141         mach-shortcuts.h so mach/ generation happens before hurd/.
9142
9143 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
9144
9145         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
9146         of demorm correctly if low word is zero.
9147         Reported by Fred J. Tydeman <tydeman@tybor.com>.
9148         * math/libm-test.inc (nextafter_test): New test, but disabled due
9149         to gcc bug.
9150
9151         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
9152         counter and only call __exit_thread if this is not the last thread.
9153
9154 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
9155
9156         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
9157         subtracting map->l_tls_offset.
9158
9159 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
9160
9161         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
9162         _CS_GNU_LIBPTHREAD_VERSION.
9163         * posix/conststr.c: Handle these new values.
9164         * posix/getconf.c: Likewise.
9165
9166         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
9167         masking of version index.
9168         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9169
9170 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
9171
9172         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
9173         correctly.  Reported by Thorsten Kukuk.
9174
9175 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
9176
9177         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
9178         _BSD_SOURCE to compiler.
9179         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
9180         Patches by Alan Modra.
9181
9182 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
9183
9184         * io/ftwtest.c: Get current working directory before and after the
9185         nftw call and make sure they match.
9186
9187 2003-02-08  Jim Meyering  <jim@meyering.net>
9188
9189         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
9190         the current directory, not just when DIR contains a slash.
9191         Reported by Manoj Srivastava.
9192
9193 2003-02-07  Jim Meyering  <jim@meyering.net>
9194
9195         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
9196         Include autoconf-recommended block of dirent/NAMELEN-related
9197         definitions and includes.  Use NAMELEN throughout, rather than
9198         _D_EXACT_NAMLEN.
9199         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
9200         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
9201         (stpcpy): Declare, if necessary.
9202         (mempcpy): Define, if necessary.
9203         [!_LIBC] (__stpcpy, __mempcpy): Define.
9204         [!_LIBC] (LXSTAT, XSTAT): Define.
9205         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
9206         (find_object): Don't use c99-style struct initializer.
9207         Tweak wording in a couple comments.
9208
9209 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
9210
9211         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
9212         for SH.
9213         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
9214         after the trapa instruction.
9215         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
9216         parameters.
9217         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
9218         (NEED_SYSCALL_INST_PAD): Define.
9219         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
9220         avoid to use definition for the kernel.
9221         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
9222         Save and restore the frame pointer.
9223         (SYSCALL_INST_PAD): Define.
9224         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9225         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
9226         after trapa instruction.
9227         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9228         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9229
9230 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
9231
9232         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
9233         so that it can have aliases.
9234         * inet/herrno.c (h_errno): Put it into .bss not .data section.
9235
9236 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
9237
9238         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
9239         (profile_fixup): Likewise.
9240         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
9241
9242 2002-11-24  Robert Love  <rml@tech9.net>
9243
9244         * posix/sched.h: Second parameter of sched_setaffinity and
9245         sched_getaffinity is `unsigned int', not `unsigned long'.
9246         * sysdeps/generic/sched_setaffinity.c: Likewise.
9247         * sysdeps/generic/sched_getaffinity.c: Likewise.
9248
9249 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
9250
9251         * debug/catchsegv.sh: Fix typo in error messsage.
9252         Reported by John Levon <levon@movementarian.org>.
9253
9254         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
9255         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
9256         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
9257         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
9258         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
9259         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9260         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
9261
9262         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
9263         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
9264
9265 2003-02-05  Jim Meyering  <jim@meyering.net>
9266
9267         Fix a heap-corrupting bug.
9268         * io/ftw.c: Include <limits.h>.
9269         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
9270         (process_entry): Allocate enough space to hold the resulting
9271         file name.  Don't presume that 2*dirbufsize is enough.
9272         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
9273         it is guaranteed to be defined.
9274
9275 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
9276
9277         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
9278         * iconvdata/bug-iconv3.c: New file.
9279
9280 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9281
9282         * sysdeps/unix/sysv/linux/s390/system.c: New file.
9283
9284 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
9285
9286         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
9287         check.
9288         * config.h.in (BROKEN_SPARC_WDISP22): Add.
9289
9290 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
9291
9292         * sysdeps/i386/i686/memmove.S: New file.
9293
9294 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9295
9296         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
9297         Include kernel-features.h
9298         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
9299         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
9300         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
9301         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
9302
9303 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
9304
9305         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
9306
9307 2003-01-25  Jim Meyering  <jim@meyering.net>
9308
9309         * io/ftw.c (object_compare): Compare inode numbers before device
9310         numbers, since the former are much more likely to differ.
9311
9312 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9313
9314         * time/tzfile.c (__tzfile_compute): Change return value type to
9315         void.  Adjust return statements.
9316         * include/time.h (__tzfile_compute): Adjust prototype.
9317
9318 2003-02-01  Jim Meyering  <jim@meyering.net>
9319
9320         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
9321         always returns 1.
9322
9323 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9324
9325         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9326         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
9327
9328 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9329
9330         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
9331         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
9332         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
9333         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9334         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
9335         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9336         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
9337         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
9338
9339 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
9340
9341         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
9342         back to 2.4.19 for powerpc64.
9343         * sysdeps/unix/sysv/linux/kernel-features.h
9344         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
9345         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
9346
9347 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
9348
9349         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
9350         platforms with strange alignment requirements on wchar_t.
9351
9352 2003-01-31  Andreas Schwab  <schwab@suse.de>
9353
9354         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
9355         aliases, already added by make-syscalls.sh.
9356         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
9357         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
9358         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
9359         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9360         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
9361         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
9362         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
9363         * sysdeps/unix/inet/syscalls.list: Likewise.
9364         * sysdeps/unix/syscalls.list: Likewise.
9365
9366 2003-01-31  Andreas Schwab  <schwab@suse.de>
9367
9368         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
9369         any more.
9370
9371 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9372
9373         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
9374         not l to load tls from stack.
9375
9376 2003-01-30  Roland McGrath  <roland@redhat.com>
9377
9378         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
9379         null argument before all else.
9380         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
9381
9382 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9383
9384         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
9385         Move to RESOLVE protected part of the header.
9386         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
9387         Likewise.
9388
9389 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9390
9391         * stdio-common/Makefile (tests): Add bug15.
9392         (bug15-ENV): Define.
9393         * stdio-common/bug15.c: New file.
9394
9395 2002-10-07  Wolfram Gloger  <wg@malloc.de>
9396
9397         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
9398         to foreign sbrk()'s if arena is contiguous.  Bug report from
9399         Bruno Haible <bruno@clisp.org>.
9400
9401 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9402
9403         * sysdeps/s390/libc-tls.c: Include stdlib.h.
9404
9405 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9406
9407         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
9408         ps.__count.
9409
9410 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
9411
9412         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
9413         restoring of %r6.
9414         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
9415         64-bit load.
9416         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
9417
9418 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
9419
9420         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
9421         (allocate_static_tls): ...here.  Add __attribute_noinline__.
9422         Don't return on failure.
9423         (_dl_reloc_bad_type): Add __attribute_noinline__.
9424         * elf/do-rel.h (elf_dynamic_do_rel): Add
9425         __attribute__((always_inline)).
9426         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
9427         elf_machine_rel_relative, elf_machine_rela_relative,
9428         elf_machine_lazy_rel): Add prototypes with
9429         __attribute__((always_inline)).
9430
9431 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
9432
9433         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
9434
9435 2003-01-29  Roland McGrath  <roland@redhat.com>
9436
9437         * configure.in: Barf if configured in $srcdir.
9438
9439 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
9440
9441         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9442         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
9443
9444 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9445
9446         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
9447         clone parameters to match the order used on ia32.
9448         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9449
9450 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9451
9452         * elf/elf.h: Add new s390 relocs.
9453         * elf/tls-macros.h: Add s390 versions.
9454         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
9455         * sysdeps/s390/dl-tls.h: New file.
9456         * sysdeps/s390/libc-tls.c: New file.
9457         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
9458         relocs for class PLT.
9459         (elf_machine_rela): Handle TLS relocs.
9460         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
9461         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
9462         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
9463         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
9464         CLONE_CHILD_*TID flags.
9465         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
9466         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
9467         bit offset.
9468         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
9469         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
9470         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
9471         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
9472         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
9473         Likewise.
9474         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
9475         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
9476         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9477         variants.
9478         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
9479         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
9480         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
9481         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
9482         variants.
9483
9484 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
9485
9486         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
9487         from __libc_pause.  Implement using sigsuspend.
9488         (__libc_pause): Call do_pause to do the real work.
9489
9490         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
9491         sig_or_mask parameter is is_sig != 0.
9492
9493 2003-01-21  Philip Blundell  <philb@gnu.org>
9494
9495         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
9496
9497 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
9498
9499         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
9500
9501 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
9502
9503         * stdio-common/bug14.c: Use official name for the locale.
9504
9505         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
9506         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
9507         instead of __libc_cleanup_region_end.
9508
9509         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
9510         as first parameter to __libc_cleanup_region_start.
9511
9512         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
9513         (__fe_nomask_env): Use __prctl not prctl.
9514         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
9515         prctl syscall.
9516
9517         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
9518
9519         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
9520
9521         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
9522         wrap-around in test.
9523
9524 2003-01-26  Andreas Schwab  <schwab@suse.de>
9525
9526         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
9527         compatibility symbols.  Remove INTDEF for __divdi3.
9528         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
9529         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
9530         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
9531         define.
9532         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
9533
9534 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
9535
9536         * elf/tls-macros.h: Add SPARC 32-bit definitions.
9537         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
9538         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
9539         for the first half of the header.  Include tls.h.
9540         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
9541         relocs too.
9542         (elf_machine_rela): Handle TLS relocs.
9543         * sysdeps/sparc/dl-tls.h: New file.
9544
9545         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
9546         support.
9547
9548         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
9549         * sysdeps/sparc/sparc32/memchr.S: Likewise.
9550         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
9551         * sysdeps/sparc/sparc32/strcat.S: Likewise.
9552         * sysdeps/sparc/sparc32/strchr.S: Likewise.
9553         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
9554         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
9555         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
9556         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
9557         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
9558         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
9559         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
9560         * sysdeps/sparc/sparc64/strcat.S: Likewise.
9561         * sysdeps/sparc/sparc64/strchr.S: Likewise.
9562         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
9563         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
9564         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
9565         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
9566         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
9567         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
9568
9569 2003-01-24  Andreas Schwab  <schwab@suse.de>
9570
9571         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
9572         elements, and process them backwards.
9573         * elf/Makefile ($(objpfx)tst-array4): New target.
9574         ($(objpfx)tst-array4.out): Likewise.
9575         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
9576         * elf/tst-array4.c: New file.
9577         * elf/tst-array4.exp: Likewise.
9578
9579 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
9580
9581         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
9582
9583 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
9584
9585         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
9586         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
9587         cancellation handling and handle both __NR_pread64 and __NR_pread.
9588         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
9589         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
9590         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
9591         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
9592         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
9593         case, use register names consistently.
9594
9595 2003-01-27  Wolfram Gloger  <wg@malloc.de>
9596
9597         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
9598         pointer, not of the computed chunk.  Bug report from Carlos
9599         O'Donell <carlos@baldric.uwo.ca>.
9600
9601 2003-01-25  Andreas Schwab  <schwab@suse.de>
9602
9603         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
9604         addressing to save GOT entries.
9605
9606 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
9607
9608         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
9609         inline_syscall1, inline_syscall2, inline_syscall3,
9610         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
9611         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
9612         __attribute__((unused)) to ChEcK.
9613
9614 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9615
9616         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
9617         Fix inline assembler constraints.
9618         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
9619         Likewise.
9620
9621         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
9622         -fPIC.
9623
9624 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
9625
9626         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
9627         compute the cosine, not the sine, even if x > 0.8.
9628
9629 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9630
9631         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
9632         _nss_nis_setspent.  Work around the different prototypes.
9633         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
9634         internal_nis_endrpcent.
9635         (internal_nis_endrpcent): Change return type to void.  Change callers.
9636         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
9637         _nss_nis_setpwent.  Work around the different prototypes.
9638         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
9639         of the function to...
9640         (internal_nis_endprotoent): ... here.  New function.
9641         (internal_nis_setprotoent): Use internal_nis_endprotoent.
9642         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
9643         _nss_nis_setnetent.  Work around the different prototypes.
9644         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
9645         of the function to...
9646         (internal_nis_endnetgrent): ... here.  New function.
9647         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
9648
9649 2003-01-19  Jim Meyering  <jim@meyering.net>
9650
9651         * time/strftime.c: (widen): Merge nearly-identical definitions.
9652         (nl_get_alt_digit) [! defined my_strftime]: Define.
9653         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
9654         _nl_get_alt_digit and _nl_get_walt_digit.
9655
9656 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
9657
9658         * time/strftime.c (my_strftime): Handle very large width
9659         specifications for numeric values correctly.  Improve checks for
9660         overflow.
9661         * time/Makefile (tests): Add tst-strftime.
9662         * time/tst-strftime.c: New file.
9663
9664 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
9665
9666         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
9667         _nss_nis_sethostent.  Work around the different prototypes.
9668         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
9669         _nss_nis_setgrent.  Work around the different prototypes.
9670         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
9671         function.  Split out from _nss_nis_endetherent.
9672         (internal_nis_setetherent): Use internal_nis_endetherent instead of
9673         duplicating the code.
9674         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
9675         of _nss_nis_setaliasent.
9676         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
9677         internal_nis_endservent code, don't duplicate it.
9678
9679         * inet/rexec.c (rexec_af): Protect socket operations with
9680         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
9681         * inet/rcmd.c (rcmd_af): Likewise.
9682
9683 2003-01-17  Roland McGrath  <roland@redhat.com>
9684
9685         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
9686         Add test of value 0.80190127184058835.
9687
9688         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
9689
9690 2003-01-17  Richard Henderson  <rth@redhat.com>
9691
9692         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
9693         relocs for class PLT.
9694         * sysdeps/alpha/libc-tls.c: New file.
9695         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
9696         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
9697
9698 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
9699
9700         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
9701         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
9702         on _dl_static_lock.
9703
9704 2003-01-17  Andreas Jaeger  <aj@suse.de>
9705
9706         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
9707
9708 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
9709
9710         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
9711         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
9712         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
9713         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
9714         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
9715         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
9716         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
9717         is 2.4.21.
9718
9719 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
9720
9721         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
9722         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
9723         buffers.
9724
9725         * sysdeps/generic/sysconf.c: Unconditionally implement
9726         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
9727         * sysdeps/posix/sysconf.c: Likewise.
9728
9729 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9730
9731         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
9732         set *err to the returned error, not to REG_ESPACE unconditionally.
9733         (build_word_op): Likewise.
9734         * posix/Makefile (tests): Add bug-regex16.
9735         * posix/bug-regex16.c: New test.
9736
9737 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9738
9739         * elf/dl-load.c (_dl_map_object_from_fd): Use
9740         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
9741         been already initialized.
9742
9743 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
9744
9745         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
9746
9747 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
9748
9749         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
9750         allocated too.  Reported by Al Viro <aviro@redhat.com>.
9751
9752 2003-01-16  Roland McGrath  <roland@redhat.com>
9753
9754         Tweak merged .abilist file format to merge duplicate symbols in
9755         different sets into multi-version stanzas with new "| SET regexp..."
9756         header continuation lines.
9757         * scripts/merge-abilist.awk: Rewritten for new format.
9758         * scripts/extract-abilist.awk: Likewise.
9759
9760 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9761
9762         * nscd/connections.c (nscd_run): Remove bogus return which isn't
9763         necessary with gcc 3.2+.
9764         (nscd_init): Don't use error() to print message, use dbg_log.
9765
9766         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
9767         expected size into state.
9768         (UNPACK_BYTES): Do the reverse.
9769         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
9770         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
9771         Reported by Al Viro <aviro@redhat.com>.
9772
9773         * stdio-common/Makefile (tests): Add bug14.
9774         * stdio-common/bug14.c: New file.
9775
9776         * stdio-common/vfscanf.c: When recognizing multibyte characters in
9777         string reset the byte counter after mbrtowc reported it is not a
9778         partial character.  Reported by Al Viro <aviro@redhat.com>.
9779
9780 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
9781
9782         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
9783         sysdep-cancel.h, not sysdep.h.
9784
9785 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9786
9787         * nscd/connections.c (nscd_run): Protect accept call with
9788         TEMP_FAILURE_RETRY.
9789
9790 2003-01-15  Andreas Schwab  <schwab@suse.de>
9791
9792         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
9793         (common-generated): Add s-proto-bp.d.
9794         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
9795         of bp thunks.
9796         * sysdeps/unix/s-proto-bp.S: New file.
9797         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
9798         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
9799         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
9800
9801 2003-01-15  Roland McGrath  <roland@redhat.com>
9802
9803         * Makerules: Use -include for tls.make, suppresses warning.
9804         Move gen-as-const-headers rules up so before-compile is set in time.
9805         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
9806
9807 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
9808
9809         * nscd/nscd.c (main): Make code to close all file descriptors
9810         faster and more robust.
9811
9812         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
9813         request with one writev call.  Protect all read calls with
9814         TEMP_FAILURE_RETRY.
9815         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
9816         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
9817
9818         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
9819         Protect writev calls with TEMP_FAILURE_RETRY.
9820         * nscd/grpcache.c: Likewise.
9821         * nscd/pwdcache.c: Likewise.
9822
9823         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
9824         IPv6 address in debug output.
9825
9826 2003-01-14  Roland McGrath  <roland@redhat.com>
9827
9828         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
9829         $(objpfx) directories, and get rid of vpath directives.  The previous
9830         arrangement resulted in files being written to the source directories
9831         when run in a clean build.  Find all .abilist files in $(..)abilist/.
9832         (update-abi-%): Likewise.
9833         (generated): Don't add .symlist files, they'll be intermediates.
9834
9835         * sysdeps/generic/init-first.c: Add a comment.
9836
9837         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
9838
9839         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
9840         #includes and expressions.
9841
9842         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
9843         config list when it already contains cpu-.*-os.* without / part.
9844
9845         * Makerules (sed-remove-dotdot): New variable.
9846         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
9847         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
9848         (check-abi-config): New variable, append /tls or /notls to the tuple.
9849         (check-abi-%): Use that for -v config value.
9850         Find .abilist files in abilist/libfoo.abilist, not in subdir.
9851         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
9852
9853 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9854
9855         * manual/install.texi: Correct description of header preparation for
9856         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
9857
9858 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
9859
9860         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
9861         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9862         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
9863
9864 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
9865
9866         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
9867         (INTERNAL_SYSCALL): Make use of ERR parameter.
9868         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
9869         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
9870         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
9871         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
9872
9873 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
9874
9875         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
9876         == IPPROTO_TCP.
9877         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
9878
9879         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
9880         Fix entry for bit 31.
9881
9882         * iconvdata/Makefile: Add rules to build IBM866NAV.
9883         * iconvdata/ibm866nav.c: New file.
9884         * iconvdata/tst-tables.sh: Add IBM866NAV.
9885         * iconvdata/gconv-modules: Add entries for IBM866NAV.
9886
9887 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9888
9889         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
9890         to test void* parameters.
9891
9892         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
9893         source pointer before dereferencing.
9894         (__STRING_SMALLL_GET32): Likewise.
9895         (__memset_gc): Add missing parenthesis around macro arguments.
9896         Patch by Denis Zaitsev <zzz@cd-club.ru>.
9897
9898         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
9899         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
9900
9901 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
9902
9903         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
9904         defining.
9905
9906 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9907
9908         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
9909         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
9910         here.
9911         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
9912
9913 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9914
9915         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
9916         from here...
9917         (PSEUDO): ... to here.
9918         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
9919         from here...
9920         (PSEUDO): ... to here.
9921
9922 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
9923
9924         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
9925         dirent64 instead of struct dirent for dirent.  Call readdir64
9926         instead of readdir.
9927
9928         * locale/programs/locfile.c (siblings_uncached): Use struct
9929         dirent64 instead of struct dirent for other_dentry.  Call
9930         readdir64 instead of readdir.
9931
9932         * elf/ldconfig.c (direntry): Change type to struct dirent64.
9933         (search_dir): Use readdir64 instead of readdir.
9934         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
9935
9936 2003-01-12  Roland McGrath  <roland@redhat.com>
9937
9938         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
9939         not strtol.  The former is usable in ld.so, the latter not.
9940
9941         * include/fcntl.h: Declare __libc_creat.
9942
9943         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
9944         libhurduser-link.so-no-z-defs): New variables.
9945
9946         * malloc/malloc.c: Revert last change.
9947         * malloc/malloc.h (_int_*): Move these decls to ...
9948         * include/malloc.h: ... here.  Add attribute_hidden.
9949         (_int_valloc): Declare it too.
9950
9951 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9952
9953         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
9954         search for removed searchlist.  Reported by Roland McGrath.
9955
9956         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
9957         given as start file.
9958
9959         * io/ftw.c (ftw_startup): Use correct name in check for symlink
9960         without existing target.  Patch by Jim Meyering.
9961
9962         * Makerules (build-shlib-helper): Don't use -z defs linker option
9963         if no-z-defs is defined either.
9964
9965 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9966
9967         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
9968         file.
9969
9970 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
9971
9972         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
9973         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
9974
9975 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9976
9977         * io/ftwtest-sh: Add test case for relative path with /. at the end.
9978
9979 2003-01-12  Jim Meyering  <jim@meyering.net>
9980
9981         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
9982         use the basename if we've already chdir'd into its parent directory.
9983
9984 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
9985
9986         * io/ftw.c (process_entry): Use relative path when using chdir()
9987         to change directory after call to ftw_dir.
9988         * io/ftwtest-sh: Add test for relative path argument to nftw()
9989         with FTW_CHDIR option.
9990
9991 2003-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
9992
9993         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
9994         Define for powerpc.
9995         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
9996         into account.
9997         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
9998         (INTERNAL_SYSCALL): Make use of ERR parameter.
9999         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
10000         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
10001         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
10002         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
10003
10004 2003-01-09  Richard Henderson  <rth@redhat.com>
10005
10006         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
10007         DTPREL64 and TPREL64 without loadbase applied.
10008
10009 2003-01-09  Richard Henderson  <rth@redhat.com>
10010
10011         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
10012         for NOT_IN_libc.
10013
10014         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
10015         * sysdeps/unix/alpha/sysdep.h: ... here.
10016         (PSEUDO_LOADGP): Remove.
10017         (PSEUDO_PROLOGUE): Load GP in non-pic case.
10018         (SYSCALL_ERROR_LABEL): New.
10019         (PSEUDO): Use it in error branch.
10020         (PSEUDO_END): Add $syscall_error label.
10021
10022 2003-01-12  Andreas Jaeger  <aj@suse.de>
10023
10024         * math/bits/mathcalls.h: Round is a const function.
10025
10026 2003-01-11  Jim Meyering  <jim@meyering.net>
10027
10028         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
10029         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
10030         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
10031         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
10032         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
10033         [!_LIBC] (internal_function, dirent64, MAX): Define.
10034         (__set_errno): Define if not already defined.
10035         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
10036         the basename, not the entire file name.
10037         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
10038         the basename, not the entire file name.
10039
10040 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10041
10042         * string/tester.c (test_strcpy): Disable last added strcpy until
10043         it is fixed.
10044
10045 2003-01-11  Philip Blundell  <philb@gnu.org>
10046
10047         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
10048
10049 2003-01-11  Andreas Schwab  <schwab@suse.de>
10050
10051         * Makerules: Add vpath for %.dynsym and %.so so that the
10052         implicit rule chaining for check-abi works.
10053
10054 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10055
10056         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
10057         Add non-PIC case.
10058
10059 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
10060
10061         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
10062         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
10063         gp is used early.
10064         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
10065         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
10066         Ensure libc.so in DT_NEEDED.
10067         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
10068         CHECK_STATIC_TLS before l_tls_offset use.
10069         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
10070         Likewise.
10071         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
10072         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
10073         Allocate TLS_PRE_TCB_SIZE bytes below result.
10074         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
10075         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
10076         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
10077         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
10078         bytes below result and add tcb_offset to memsz.
10079         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
10080         * sysdeps/ia64/dl-machine.h: Include tls.h.
10081         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
10082         too.
10083         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
10084         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
10085         * sysdeps/ia64/libc-tls.c: New file.
10086
10087 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
10088
10089         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
10090         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
10091         Fix type.  Move definition out of #if.
10092         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
10093         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
10094         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
10095         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
10096         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
10097         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
10098         support.
10099         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
10100         ftruncate64, pread64, pwrite64, truncate64 entries.
10101         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
10102         (INLINE_SYSCALL): New version that supports function call like
10103         syscalls.  Add __builtin_expect.
10104         (LOADARGS_n): Add argument size safety checks.
10105         (INTERNAL_SYSCALL): New Macro.
10106         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
10107         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
10108         redefinition of elf_fpreg_t and elf_fpregset_t.
10109
10110 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
10111
10112         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
10113         simplify test for unloading.  If loader of a DSO is unloaded do not
10114         use its scope anymore.  Fall back to own scope and adjust opencounts.
10115         Fix several comments.
10116         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
10117         the l_searchlist, not only for l_initfini.
10118
10119         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
10120         dependencies if objects cannot be removed.  Remove object with the
10121         definition as not unloadable if necessary.
10122
10123         * elf/reldep6.c: Create relocation dependency before closing the first
10124         module.
10125
10126 2003-01-10  Guido Günther  <agx@sigxcpu.org>
10127
10128         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
10129         * sysdeps/unix/mips/brk.S: Likewise.
10130         * sysdeps/unix/mips/pipe.S: Likewise.
10131
10132 2003-01-10  Andreas Schwab  <schwab@suse.de>
10133
10134         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
10135
10136         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
10137         are known to have the vfork syscall.
10138
10139         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
10140
10141         * sysdeps/unix/sysv/linux/kernel-features.h
10142         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
10143         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
10144         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
10145
10146 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10147
10148         * elf/Makefile: Add rules to build and run reldep9 test.
10149         * elf/reldep9.c: New file.
10150         * elf/reldep9mod1.c: New file.
10151         * elf/reldep9mod2.c: New file.
10152         * elf/reldep9mod3.c: New file.
10153
10154 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10155
10156         * elf/Makefile: Add rules to build and run nodelete2 test.
10157         * elf/nodelete2.c: New file.
10158         * elf/nodel2mod1.c: New file.
10159         * elf/nodel2mod2.c: New file.
10160         * elf/nodel2mod3.c: New file.
10161
10162 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
10163
10164         * posix/test-vfork.c (noop): Add __attribute_noinline__.
10165         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
10166         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
10167         defining it.
10168         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
10169         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
10170         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
10171         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
10172         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
10173
10174 2003-01-09  Andreas Schwab  <schwab@suse.de>
10175
10176         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
10177
10178 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
10179
10180         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
10181         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10182         argument.
10183         (INTERNAL_SYSCALL_DECL): Define.
10184
10185 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10186
10187         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
10188         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
10189         argument.
10190         (INTERNAL_SYSCALL_DECL): Define.
10191         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
10192         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
10193         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
10194         (INLINE_SYSCALL): Adjust.
10195         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
10196         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
10197         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
10198         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
10199         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
10200         add err argument to INTERNAL_SYSCALL* macros.
10201         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
10202         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
10203         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
10204         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
10205         Likewise.
10206         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
10207         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
10208         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
10209
10210 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
10211
10212         Unify symbols in user namespace exported by libc.so and libc.a.
10213         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
10214         argp_fmtstream_free, and argp_fmtstream_printf.
10215         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
10216         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
10217         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
10218         argp_fmtstream_point.
10219         * gmon/gmon.c: Don't define write_profiling.
10220         * libio/genops.c: Don't define _cleanup.
10221
10222         * intl/explodename.c (_nl_find_language.c): Mark as static.
10223         * intl/loadinfo.h: Remove _nl_find_language prototype.
10224
10225         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
10226         * libio/libioP.h: Remove declaration.
10227
10228         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
10229         * libio/libioP.h: Remove declaration.
10230
10231         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
10232         * sysdeps/generic/framestate.c: Define STATIC before including
10233         unwind-dw2.c.
10234
10235         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
10236
10237 2003-01-06  Philip Blundell  <philb@gnu.org>
10238
10239         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
10240         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
10241
10242         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
10243         directive.
10244         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
10245         (SYSCALL_ERROR): New.
10246         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
10247         handling code.
10248         (INTERNAL_SYSCALL): Define.
10249         (INLINE_SYSCALL): Use it.
10250         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10251         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
10252         SYSCALL_ERROR in place of __syscall_error.
10253
10254 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10255
10256         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
10257         __bswap_32, __bswap_64): Put x into temporary variable
10258         to avoid warnings.
10259         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
10260         (inline) functions.
10261         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
10262         __bswap_32, __bswap_64): Put x into temporary variable
10263         to avoid warnings.
10264         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
10265         (inline) functions.
10266         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
10267         Likewise.
10268
10269 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10270
10271         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
10272         alias.
10273
10274 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
10275
10276         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
10277         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
10278
10279 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
10280
10281         * math/libm-test.inc (significand_test): New function.
10282         (main): Call it.
10283
10284 2003-01-06  Roland McGrath  <roland@redhat.com>
10285
10286         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
10287         arguments.
10288         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
10289         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
10290         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
10291
10292         * string/tester.c (test_strcpy): Add test with `void *' arguments.
10293
10294 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
10295
10296         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
10297         return significand and not the exponent.
10298         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
10299
10300         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
10301         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
10302
10303         * malloc/malloc.c: Mark all _int_* functions as static.
10304
10305 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10306
10307         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
10308         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
10309         handling.
10310         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
10311
10312 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10313
10314         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
10315         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
10316         support.
10317         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
10318         ftruncate64, truncate64, pread64 and pwrite64 entries.
10319         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10320         (INLINE_SYSCALL): Add __builtin_expect.
10321         (LOADARGS_n): Add argument size safety checks.
10322         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
10323         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
10324         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
10325         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
10326         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
10327         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
10328
10329 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
10330
10331         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
10332         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
10333         (LIBC_CANCEL_HANDLED): Add.
10334
10335         * sysdeps/unix/sysv/linux/alpha/sysdep.h
10336         (inline_syscall_r0_constraint): Rename to...
10337         (inline_syscall_r0_out_constraint): ... this.  Add =.
10338         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
10339
10340 2003-01-06  Andreas Schwab  <schwab@suse.de>
10341
10342         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
10343         sure this is always inlined.
10344         (elf_machine_rela): Likewise.
10345
10346         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
10347
10348 2003-01-04  Roland McGrath  <roland@redhat.com>
10349
10350         * Makeconfig (+mkdep): Add -MP flag.
10351         Suggested by Art Haas <ahaas@airmail.net>.
10352
10353 2003-01-05  Andreas Schwab  <schwab@suse.de>
10354
10355         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
10356
10357 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10358
10359         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
10360         SYSCALL_ERROR_HANDLER.
10361         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
10362         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
10363         Add support for cancellation handling.
10364         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
10365         SYSCALL_ERROR_HANDLER.
10366         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
10367         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
10368         Add support for cancellation handling.
10369         (SYSCALL_ERROR_HANDLER): Define PIC variants.
10370
10371 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
10372
10373         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
10374         __syscall_pread64 and __syscall_pwrite64 cancelable.
10375         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
10376         (INTERNAL_SYSCALL): New macro.
10377         (LOADARGS_0, LOADARGS_1): Fix.
10378
10379 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
10380
10381         * Makerules (build-shlip-helper): Unless told otherwise, add
10382         -Wl,-z,defs to linker command line.
10383         * rt/Makefile (librt.so): Link with ld.so.
10384         * dlfcn/Makefile (libdl.so): Likewise.
10385
10386 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
10387
10388         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
10389         cancellation handling.
10390         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
10391         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
10392
10393 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10394
10395         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
10396         order of parameters passed to kill.
10397
10398 2003-01-04  Andreas Schwab  <schwab@suse.de>
10399
10400         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
10401
10402 2003-01-03  Paul Eggert  <eggert@twinsun.com>
10403
10404         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
10405         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
10406         when compiling Bison 1.875's `bitset bset = obstack_alloc
10407         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
10408
10409 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
10410
10411         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
10412         unnecessary code.
10413         Correct reference counter in case SIGQUIT handler installation failed.
10414
10415 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
10416
10417         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
10418         Define using _Pragma(weak ...).
10419
10420 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
10421
10422         * resolv/res_libc.c: Provide declaration for __res_init_weak and
10423         reorder declarations.
10424
10425 2003-01-03  Art Haas  <ahaas@airmail.net>
10426
10427         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
10428         initializer syntax to C99.
10429         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
10430         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
10431         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
10432         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
10433         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
10434         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
10435         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
10436         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
10437         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
10438         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
10439         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
10440         * localedata/tests-mbwc/dat_mblen.c: Likewise.
10441         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
10442         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
10443         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
10444         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
10445         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
10446         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
10447         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
10448         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
10449         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
10450         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
10451         * localedata/tests-mbwc/dat_towlower.c: Likewise.
10452         * localedata/tests-mbwc/dat_towupper.c: Likewise.
10453         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
10454         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
10455         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
10456         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
10457         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
10458         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
10459         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
10460         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
10461         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
10462         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
10463         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
10464         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
10465         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
10466         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
10467         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
10468         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
10469         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
10470         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
10471         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
10472         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
10473         * localedata/tests-mbwc/dat_wctob.c: Likewise.
10474         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
10475         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
10476         * localedata/tests-mbwc/dat_wctype.c: Likewise.
10477         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
10478
10479 2003-01-03  Richard Henderson  <rth@redhat.com>
10480
10481         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
10482         (inline_syscall_r0_constraint): New.
10483         (inline_syscall[0-6]): Use them.
10484
10485 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
10486
10487         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
10488         Add rtld_hidden_proto.
10489         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
10490         (_dl_allocate_tls): Likewise.  Remove INTDEF.
10491
10492 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
10493
10494         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
10495         Morita <toshiyasu.morita@hsa.hitachi.com>.
10496         * sysdeps/sh/memcpy.S: Likewise.
10497
10498 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10499
10500         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
10501         any, but unify the test.
10502
10503 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
10504
10505         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
10506         sigaction): Protect weak_alias and libc_hidden_weak with
10507         #ifndef LIBC_SIGACTION.
10508         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
10509         sigaction): Likewise.
10510         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
10511         sigaction): Likewise.
10512         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
10513         sigaction): Likewise.
10514         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
10515         sigaction): Likewise.
10516         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
10517         sigaction): Likewise.
10518         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
10519         sigaction): Likewise.
10520         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
10521         sigaction): Likewise.  Remove SIGCANCEL handling here.
10522         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
10523         Likewise.
10524
10525 2003-01-02  Art Haas  <ahaas@airmail.net>
10526
10527         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
10528
10529 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
10530
10531         * posix/getconf.c: Update copyright year.
10532         * nss/getent.c: Likewise.
10533         * nscd/nscd_nischeck.c: Likewise.
10534         * iconv/iconvconfig.c: Likewise.
10535         * iconv/iconv_prog.c: Likewise.
10536         * elf/ldconfig.c: Likewise.
10537         * catgets/gencat.c: Likewise.
10538         * csu/version.c: Likewise.
10539         * elf/ldd.bash.in: Likewise.
10540         * elf/sprof.c (print_version): Likewise.
10541         * locale/programs/locale.c: Likewise.
10542         * locale/programs/localedef.c: Likewise.
10543         * nscd/nscd.c (print_version): Likewise.
10544         * debug/xtrace.sh: Likewise.
10545         * malloc/memusage.sh: Likewise.
10546         * malloc/mtrace.pl: Likewise.
10547
10548 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
10549
10550         * io/sys/stat.h: Include time.h with __need_timespec even if
10551         __USE_MISC is defined but __USE_XOPEN is not.
10552
10553 2003-01-01  Andreas Jaeger  <aj@suse.de>
10554
10555         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
10556         type to avoid strict aliasing problem.
10557         (_nss_dns_gethostbyname2_r): Likewise.
10558         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
10559         (_nss_dns_getnetbyname_r): Likewise.
10560         * resolv/gethnamaddr.c (_gethtent): Likewise.
10561         (gethostbyname2): Likewise.
10562
10563 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10564
10565         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
10566         to avoid using the exported symbols.  Define aliases with the
10567         original names separately.
10568
10569         * include/time.h: Add libc_hidden_proto for __strftime_l.
10570         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
10571         * time/strftime.c: Always use libc_hidden_def if _LIBC.
10572
10573         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
10574         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
10575
10576         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
10577         tr_break.
10578
10579         * csu/Makefile (routines): Add dso_handle.
10580         * csu/dso_handle.c: New file.
10581
10582 2002-12-31  Roland McGrath  <roland@redhat.com>
10583
10584         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
10585         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
10586         (S-CPPFLAGS): Add -DASSEMBLER here instead.
10587         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
10588
10589 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10590
10591         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
10592         is available.
10593
10594 2002-12-31  Andreas Jaeger  <aj@suse.de>
10595
10596         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
10597         with Linux kernel.
10598         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
10599         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
10600         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
10601
10602         * sysdeps/unix/sysv/linux/kernel_stat.h
10603         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
10604
10605         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
10606         __unused[1-3] since they're needed by some platforms.  Handle
10607         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
10608
10609         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
10610         for structs stat and stat64.
10611         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
10612         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
10613         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
10614         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
10615
10616         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
10617
10618         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
10619         nsec resolution changes.
10620         (xstat64_conv): Likewise.
10621         (xstat32_conv): Likewise.
10622
10623         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
10624         struct kernel_stat.
10625
10626         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
10627         structs stat and stat64.
10628
10629         * time/time.h (__timespec_defined): Define for __USE_MISC.
10630
10631 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10632
10633         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
10634         and __libc_current_sigrtmax.
10635
10636 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
10637
10638         * include/errno.h (__errno_location): Add prototype.
10639         Use libc_hidden_proto unconditionally.
10640         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
10641         unconditionally.
10642         * include/resolv.h (__res_state): Likewise.
10643
10644         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
10645         * include/sys/socket.h (accept): Add libc_hidden_proto.
10646         * include/errno.h (__errno_location): Likewise.
10647         * include/netdb.h (__h_errno_location): Likewise.
10648         * include/resolv.h (__res_state): Likewise.
10649         * include/unistd.h (__lseek): Likewise.
10650         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
10651         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
10652         * sysdeps/generic/res-state.c (__res_state): Likewise.
10653         * sysdeps/generic/accept.c (accept): Likewise.
10654         * sysdeps/generic/lseek.c (__lseek): Likewise.
10655         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
10656         __libc_current_sigrtmax): Likewise.
10657         * sysdeps/mach/hurd/accept.c (accept): Likewise.
10658         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
10659         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
10660         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
10661         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
10662         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
10663         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
10664         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
10665         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
10666         alias to llseek.
10667         (__GI_accept): New alias to accept.
10668         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
10669         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
10670         New alias to llseek.
10671         (__GI_accept): New alias to accept.
10672         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
10673         Likewise.
10674         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
10675         Likewise.
10676         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
10677
10678         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
10679         strong_alias (name, __GI_name).
10680         * sysdeps/arm/bsd-_setjmp.S : Likewise.
10681         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
10682         * sysdeps/i386/bsd-_setjmp.S : Likewise.
10683         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
10684         * sysdeps/mips/bsd-_setjmp.S : Likewise.
10685         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
10686         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
10687         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
10688         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
10689         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
10690         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
10691         * sysdeps/sh/bsd-_setjmp.S : Likewise.
10692         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
10693         * sysdeps/unix/arm/fork.S : Likewise.
10694         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
10695         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
10696         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
10697         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
10698         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
10699         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
10700         * sysdeps/unix/i386/fork.S : Likewise.
10701         * sysdeps/unix/mips/fork.S : Likewise.
10702         * sysdeps/unix/sparc/fork.S : Likewise.
10703         * sysdeps/unix/sparc/vfork.S : Likewise.
10704         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
10705         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
10706         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
10707         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
10708         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
10709         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
10710         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
10711         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
10712         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
10713         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
10714         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
10715         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
10716         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
10717         * sysdeps/unix/fork.S : Likewise.
10718         * sysdeps/vax/bsd-_setjmp.S : Likewise.
10719         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
10720
10721         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
10722         inclusion.
10723
10724 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
10725
10726         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
10727         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
10728         * sysdeps/mach/hurd/fork.c: Likewise.
10729         * sysdeps/unix/sysv/aix/fork.c: Likewise.
10730         * sysdeps/unix/fork.S: Add __GI___fork alias.
10731         * sysdeps/unix/arm/fork.S: Likewise.
10732         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
10733         * sysdeps/unix/i386/fork.S: Likewise.
10734         * sysdeps/unix/mips/fork.S: Likewise.
10735         * sysdeps/unix/sparc/fork.S: Likewise.
10736         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
10737         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
10738         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
10739         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
10740         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
10741         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
10742         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
10743         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
10744         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
10745         * sysdeps/unix/sparc/vfork.S: Likewise.
10746         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
10747         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
10748         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
10749         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
10750         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
10751         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
10752         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
10753         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
10754
10755         * include/time.h: Add libc_hidden_proto for __nanosleep.
10756         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
10757         * sysdeps/mach/nanosleep.c: Likewise.
10758         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
10759         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
10760
10761         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
10762         _IO_list_unlock, and _IO_list_resetlock.
10763         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
10764         _IO_list_unlock, and _IO_list_resetlock.
10765
10766         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
10767         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10768         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
10769         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
10770
10771         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
10772         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
10773         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
10774         __GI___longjmp alias.
10775
10776         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
10777         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
10778         * sysdeps/arm/bsd-_setjmp.S: Likewise.
10779         * sysdeps/generic/bsd-_setjmp.c: Likewise.
10780         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
10781         * sysdeps/i386/bsd-_setjmp.S: Likewise.
10782         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
10783         * sysdeps/mips/bsd-_setjmp.S: Likewise.
10784         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
10785         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
10786         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
10787         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
10788         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
10789         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
10790         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
10791         * sysdeps/sh/bsd-_setjmp.S: Likewise.
10792         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
10793         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
10794         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
10795         * sysdeps/vax/bsd-_setjmp.S: Likewise.
10796         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
10797
10798 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10799
10800         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
10801
10802 2002-12-30  Roland McGrath  <roland@redhat.com>
10803
10804         * Rules (generated): Target removed.
10805         * mach/Makefile (generated): Define it here instead.
10806
10807         * math/Makefile (generated): Add m_*l and m_*f variants too.
10808
10809 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
10810
10811         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
10812         the to-be-deleted objects right away instead of later separately.
10813         The latter fails because the scope data structures of the DSO
10814         might already be gone.
10815
10816         * elf/Makefile: Add rules to build and run reldep8 test.
10817         * elf/reldep8.c: New file.
10818         * elf/reldep8mod1.c: New file.
10819         * elf/reldep8mod2.c: New file.
10820         * elf/reldep8mod3.c: New file.
10821         Contributed by Jakub Jelinek.
10822
10823 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
10824
10825         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
10826         checking of return value ENOSYS from getdents64.
10827
10828 2002-12-28  Andreas Schwab  <schwab@suse.de>
10829
10830         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
10831         ($(common-objpfx)s-%.d): Generalized from
10832         $(common-objpfx)s-proto.d rule.
10833         (common-generated): Add s-proto-cancel.d.
10834         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
10835         cancellable syscalls.
10836         * sysdeps/unix/s-proto-cancel.S: New file.
10837
10838 2002-12-29  Roland McGrath  <roland@redhat.com>
10839
10840         * resolv/res_libc.c: Move _res defn magic after res_init defn
10841         so _res macro is in effect for that code.
10842
10843         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
10844         pattern for prepending $(..) so it doesn't affect $(foo).
10845
10846         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
10847
10848 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
10849
10850         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
10851         in hwcap.
10852
10853 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
10854
10855         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
10856
10857 2002-12-28  Andreas Jaeger  <aj@suse.de>
10858
10859         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
10860         avoid warning.
10861         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
10862
10863 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10864
10865         * inet/herrno.c (__h_errno_location): Remove.
10866         * inet/Makefile (routines): Add herrno-loc.
10867         * resolv/res_libc.c (__res_state): Remove.
10868         * resolv/Makefile (routines): Add res-state.
10869         * sysdeps/generic/herrno-loc.c: New file.
10870         * sysdeps/generic/res-state.c: New file.
10871
10872 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10873
10874         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
10875         Only define if USE_DL_SYSINFO is defined.
10876
10877 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
10878
10879         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
10880         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
10881         Define. Patch by Richard Henderson and Jes Sorensen.
10882         (PSEUDO): Remove unnecessary ;;.
10883         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
10884         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
10885         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
10886         if not initializing thread pointer.
10887         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
10888         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
10889         make it weak also if NONTLS_INIT_TP.
10890         * sysdeps/unix/common/pause.c: Handle cancellation.
10891         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
10892         (LOADSYSCALL): Remove.
10893         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10894         (SYSCALL_ERROR_HANDLER): Use it.
10895         (PSEUDO): Don't jump around error handler.
10896         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
10897         jump around error handler.
10898         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
10899         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
10900         to __syscall_error_handler on failure.
10901         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
10902         (LOADSYSCALL): Remove.
10903         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
10904         (SYSCALL_ERROR_HANDLER): Use it.
10905         (PSEUDO): Don't jump around error handler.
10906         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
10907         jump around error handler.
10908         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
10909         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
10910         to __syscall_error_handler on failure.
10911
10912 2002-12-27  Roland McGrath  <roland@redhat.com>
10913
10914         * scripts/gen-as-const.awk: New file.
10915         * Makefile (distribute): Add it.
10916         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
10917         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
10918         to the list.
10919         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
10920
10921 2002-12-27  Andreas Schwab  <schwab@suse.de>
10922
10923         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
10924
10925 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
10926
10927         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
10928         _environ is NULL.
10929
10930 2002-12-27  Andreas Schwab  <schwab@suse.de>
10931
10932         * Makerules ($(common-objpfx)%.make): Filter through
10933         $(sed-remove-objpfx).
10934
10935 2002-12-23  Roland McGrath  <roland@redhat.com>
10936
10937         * scripts/abilist.awk: Produce a more compact format, divided into
10938         stanzas for each version set, the set name listed only once.
10939         * scripts/extract-abilist.awk: New file.
10940         * scripts/merge-abilist.awk: New file.
10941         * Makerules (check-abi-%, update-abi-%): New pattern rules.
10942         (update-abi, check-abi): New targets.
10943         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
10944
10945 2002-12-19  Roland McGrath  <roland@redhat.com>
10946
10947         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
10948
10949         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
10950         INTERNAL_SYSCALL.
10951
10952 2002-12-21  Andreas Schwab  <schwab@suse.de>
10953
10954         * elf/check-textrel.c (handle_file): Swap p_type.
10955
10956 2002-12-21  Andreas Schwab  <schwab@suse.de>
10957
10958         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
10959         (INLINE_SYSCALL): Use it.
10960         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
10961         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
10962
10963         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
10964         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
10965
10966 2002-12-20  Art Haas  <ahaas@airmail.net>
10967
10968         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
10969         syntax to C99.
10970
10971 2002-12-21  Philip Blundell  <philb@gnu.org>
10972
10973         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
10974         top as seventh arg to __libc_start_main.
10975         Reported by paulnash@wildseed.com.
10976
10977         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
10978
10979         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
10980         compatibility cruft when new enough kernel is assumed.
10981
10982 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
10983
10984         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
10985         instead of INLINE_SYSCALL.
10986
10987 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
10988
10989         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
10990         typo.
10991
10992         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
10993         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
10994         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
10995         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
10996         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
10997         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
10998         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
10999         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
11000         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
11001         Patch by William Lee Irwin <wli@holomorphy.com>.
11002
11003 2002-12-20  Andreas Schwab  <schwab@suse.de>
11004
11005         * locale/programs/ld-measurement.c (measurement_output): Fix
11006         index calculation.
11007
11008 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
11009
11010         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
11011         Redefine _IO_flockifle and _IO_funlockfile as inlines.
11012
11013         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
11014         builds add "tls" in the search path.
11015         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
11016         (path_hwcap): Recognize "tls".
11017
11018 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11019
11020         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
11021         __waitpid instead of waitpid.
11022
11023         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
11024         int $0x80.
11025         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
11026         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
11027         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
11028
11029         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
11030         information for system calls.
11031
11032         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
11033         for ld.so.
11034
11035         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
11036
11037 2002-12-19  Roland McGrath  <roland@redhat.com>
11038
11039         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
11040         * iconvdata/ibm922.h: Likewise.
11041         * iconvdata/ibm930.h: Likewise.
11042         * iconvdata/ibm932.h: Likewise.
11043         * iconvdata/ibm933.h: Likewise.
11044         * iconvdata/ibm935.h: Likewise.
11045         * iconvdata/ibm937.h: Likewise.
11046         * iconvdata/ibm939.h: Likewise.
11047         * iconvdata/ibm943.h: Likewise.
11048         * iconvdata/isiri-3342.h: Likewise.
11049
11050 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11051
11052         * test-skeleton.c (main): Make sure correct value is seen as
11053         argv[0] after adjustment of argv, and argc.
11054
11055         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
11056         RTLD_CORRECT_DYNAMIC_WEAK is defined.
11057
11058 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
11059
11060         * nscd/connections.c (nscd_run): Shut up warning.
11061         * tst-ungetc.c (assert): Undefined before redefining.
11062
11063 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11064
11065         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
11066         is used.
11067
11068 2002-12-17  Art Haas  <ahaas@airmail.net>
11069
11070         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
11071         * iconvdata/cp775.h: Likewise.
11072         * iconvdata/ibm1046.h: Likewise.
11073         * iconvdata/ibm1124.h: Likewise.
11074         * iconvdata/ibm1129.h: Likewise.
11075         * iconvdata/ibm1132.h: Likewise.
11076         * iconvdata/ibm1133.h: Likewise.
11077         * iconvdata/ibm1160.h: Likewise.
11078         * iconvdata/ibm1161.h: Likewise.
11079         * iconvdata/ibm1162.h: Likewise.
11080         * iconvdata/ibm1163.h: Likewise.
11081         * iconvdata/ibm1164.h: Likewise.
11082
11083 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
11084
11085         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
11086         __ASSUME_CLONE_THREAD_FLAGS is defined.
11087         * sysdeps/unix/sysv/linux/kernel-features.h
11088         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
11089
11090 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11091
11092         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
11093         of asm.
11094         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11095
11096         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
11097         _dl_sysinfo.
11098         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11099         code.
11100         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
11101         _rtld_global.
11102         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
11103         code.
11104         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
11105         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
11106         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
11107         Add _dl_sysinfo.
11108
11109 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
11110
11111         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
11112         __libc_writev to...
11113         [libc: GLIBC_PRIVATE]: ...here.
11114         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
11115         __libc_msgsnd to...
11116         [libc: GLIBC_PRIVATE]: ...here.
11117
11118 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
11119
11120         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
11121         Use it instead of directly int $0x80.
11122         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
11123         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
11124         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
11125         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
11126         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11127         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
11128
11129 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11130
11131         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
11132
11133         * elf/elf.h (AT_SYSINFO): New define.
11134         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
11135         AT_SYSINFO.
11136
11137 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11138
11139         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
11140         Make cancelable.
11141         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
11142         Likewise.
11143         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
11144         Likewise.
11145         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
11146         Likewise.
11147         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
11148         Likewise.
11149         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
11150
11151         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
11152         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
11153         available, otherwise __libc_maybe_call.
11154         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
11155         cancellation handling.
11156         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
11157
11158 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
11159
11160         * posix/regcomp.c (free_workarea_compile): Free the new member
11161         ORG_INDICES.
11162         (analyze): Initialize ORG_INDICES.
11163         (duplicate_node_closure): Search for a existing node, which is
11164         duplicated from the node ORG_DEST and satisfies the constraint
11165         CONSTRAINT.  And use it to avoid inifimite loop.
11166         (search_duplicated_node): New function.
11167         (duplicate_node): Store the index of the original node.
11168         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
11169         if needed.
11170         * posix/regex_internal.h (re_dfa_t): Add new members.
11171
11172 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
11173
11174         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
11175
11176 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11177
11178         * sysdeps/posix/system.c (do_system): Add support for installation
11179         of cancellation handlers.
11180         * sysdeps/unix/sysv/linux/i386/system.c: New file.
11181
11182         * stdlib/Makefile (tests): Add tst-system.
11183         * stdlib/tst-system.c: New file.
11184
11185         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
11186         CENABLE]: Don't lose content of %ebx.
11187
11188 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
11189
11190         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
11191         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
11192
11193 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11194
11195         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
11196         fails to return a function pointer don't use it.
11197
11198 2002-12-16  Art Haas  <ahaas@airmail.net>
11199
11200         * io/ftw.c: Convert GCC extension initializer syntax to C99.
11201         * iconvdata/iso-ir-165.c: Likewise.
11202         * iconvdata/jis0208.c: Likewise.
11203         * iconvdata/jis0212.c: Likewise.
11204
11205 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11206
11207         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
11208         epoll_ctl, and epoll_wait.
11209         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
11210         epoll_create, epoll_ctl, and epoll_wait.
11211         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
11212         Davide Libenzi <davidel@xmailserver.org>.
11213         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
11214         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
11215         Add sys/epoll.h.
11216
11217 2002-12-16  Art Haas  <ahaas@airmail.net>
11218
11219         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
11220         syntax to C99
11221         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
11222         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
11223         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
11224
11225 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
11226
11227         * stdio-common/Makefile (routines): Remove lockfile.  Add
11228         flockfile, ftrylockfile, and funlockfile.
11229         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
11230         * sysdeps/generic/flockfile.c: New file.
11231         * sysdeps/generic/ftrylockfile.c: New file.
11232         * sysdeps/generic/funlockfile.c: New file.
11233
11234 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11235
11236         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
11237         macros instead of doing the calls directly.
11238         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
11239         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
11240         targets.
11241
11242 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
11243
11244         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
11245         * sysdeps/ieee754/bits/nan.h: Likewise.
11246
11247         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
11248         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
11249
11250 2002-12-16  Roland McGrath  <roland@redhat.com>
11251
11252         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
11253         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
11254         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
11255
11256         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
11257         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
11258         s_putpmsg.
11259         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
11260         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
11261         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
11262         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
11263         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
11264         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
11265         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
11266         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
11267
11268 2002-12-13  Paul Eggert  <eggert@twinsun.com>
11269
11270         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
11271         is now u_int, not int.
11272         (struct XDR.x_handy): Now u_int, not int.
11273         * sunrpc/xdr_mem.c: Include <limits.h>.
11274         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
11275         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
11276         x_handy is now unsigned, not signed.
11277         Do not decrement x_handy if no change is made.
11278         (xdrmem_setpos): Check for int overflow.
11279         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
11280         (xdr_sizeof): Remove cast that is now unnecessary, now that
11281         x_handy is unsigned.
11282
11283 2002-12-15  Art Haas  <ahaas@airmail.net>
11284
11285         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
11286         * iconvdata/gap.awk: Likewise.
11287         * iconvdata/gen-8bit-gap-1.sh: Likewise.
11288         * iconvdata/gen-8bit-gap.sh: Likewise.
11289         * locale/C-address.c: Likewise.
11290         * locale/C-collate.c: Likewise.
11291         * locale/C-ctype.c: Likewise.
11292         * locale/C-identification.c: Likewise.
11293         * locale/C-measurement.c: Likewise.
11294         * locale/C-messages.c: Likewise.
11295         * locale/C-monetary.c: Likewise.
11296         * locale/C-name.c: Likewise.
11297         * locale/C-numeric.c: Likewise.
11298         * locale/C-paper.c: Likewise.
11299         * locale/C-telephone.c: Likewise.
11300         * locale/C-time.c: Likewise.
11301         * nscd/connections.c: Likewise.
11302         * nscd/grpcache.c: Likewise.
11303         * nscd/hstcache.c: Likewise.
11304         * nscd/pwdcache.c: Likewise.
11305         * stdio-common/vfprintf.c: Likewise.
11306         * stdlib/random.c: Likewise.
11307         * sysdeps/generic/siglist.c: Likewise.
11308         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
11309         * sysdeps/ieee754/bits/nan.h: Likewise.
11310         * sysdeps/posix/sprofil.c: Likewise.
11311         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
11312         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
11313         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
11314
11315 2002-12-15  Roland McGrath  <roland@redhat.com>
11316
11317         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
11318
11319         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
11320         <tls.h> here, no need for it.
11321         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11322
11323         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
11324         parameter, not varargs parameter.
11325
11326         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
11327         argument so it's not an unused variable.
11328
11329         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
11330         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
11331         for users.
11332
11333         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
11334
11335 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11336
11337         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
11338         original __libc_fcntl code.  Just renamed.
11339
11340 2002-12-15  Andreas Schwab  <schwab@suse.de>
11341
11342         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
11343
11344 2002-12-14  Olaf Hering  <olh@suse.de>
11345
11346         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
11347         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
11348
11349 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
11350
11351         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
11352
11353         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
11354         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
11355
11356         * sysdeps/unix/sysv/linux/open64.c: New file.
11357
11358         * sysdeps/generic/pselect.c: Add support for cancellation handling.
11359         * sysdeps/posix/open64.c: Likewise.
11360         * sysdeps/posix/sigpause.c: Likewise.
11361         * sysdeps/posix/sigwait.c: Likewise.
11362         * sysdeps/posix/system.c: Likewise.
11363         * sysdeps/posix/waitid.c: Likewise.
11364         * sysdeps/unix/sysv/linux/accept.S: Likewise.
11365         * sysdeps/unix/sysv/linux/connect.S: Likewise.
11366         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
11367         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
11368         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
11369         * sysdeps/unix/sysv/linux/poll.c: Likewise.
11370         * sysdeps/unix/sysv/linux/pread.c: Likewise.
11371         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
11372         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
11373         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
11374         * sysdeps/unix/sysv/linux/readv.c: Likewise.
11375         * sysdeps/unix/sysv/linux/recv.S: Likewise.
11376         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
11377         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
11378         * sysdeps/unix/sysv/linux/send.S: Likewise.
11379         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
11380         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
11381         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
11382         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
11383         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
11384         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
11385         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
11386         * sysdeps/unix/sysv/linux/wait.c: Likewise.
11387         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
11388         * sysdeps/unix/sysv/linux/writev.c: Likewise.
11389         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
11390         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
11391
11392 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11393
11394         * sysdeps/generic/sysdep-cancel.h: New file.
11395         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
11396         cancelable syscall.
11397         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
11398         recvmsg, send, sendmsg, sendto): Make cancelable.
11399         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
11400         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
11401         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11402         sendto, osf_select): Likewise.
11403         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
11404         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11405         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
11406         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11407         sendto): Likewise.
11408         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
11409         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
11410         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
11411         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11412         sendto): Likewise.
11413         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
11414         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
11415         sendto, select): Likewise.
11416         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
11417         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
11418         Likewise.
11419         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
11420         select, fcntl): Likewise.
11421         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
11422         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
11423         read, readv, select, sigsuspend, write, writev): Likewise.
11424
11425 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11426
11427         * dirent/bug-readdir1.c: Include unistd.h.
11428
11429 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
11430
11431         * locale/programs/locale.c: Include locarchive.h.
11432         (ARCHIVE_NAME): Define.
11433         (write_archive_locales): New function.
11434         (write_locales): Use it.  Ensure the same locale is not printed
11435         multiple times in verbose mode.
11436         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
11437         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
11438         functions.
11439         (struct nameent): New type.
11440         (nameentcmp): New function.
11441
11442 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
11443
11444         * posix/regex_internal.c (re_string_context_at): Guard wide char
11445         code with #ifdef RE_ENABLE_I18N.
11446
11447 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
11448
11449         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
11450
11451 2002-12-13  Roland McGrath  <roland@redhat.com>
11452
11453         * posix/bug-regex15.c: New file.
11454         * posix/Makefile (tests): Add it.
11455
11456         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
11457         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
11458
11459 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
11460
11461         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
11462
11463         * misc/syslog.c (log_cleanup): Don't use parameter in
11464         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
11465         pass NULL instead of a pointer to syslog_lock.
11466
11467 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
11468
11469         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
11470         linker map for all iconv modules.
11471         (distribute): Add gconv.map.
11472         * iconvdata/gconv.map: New file.
11473
11474         * elf/Makefile: Also check all iconv modules for text relocations.
11475
11476         * stdlib/Makefile: Remove code to automatically import GMP.
11477
11478         * elf/Makefile (tests): Add rules to build and run check-textrel.
11479         * elf/check-textrel.c: New file.
11480
11481         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
11482         directive.
11483
11484 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
11485
11486         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
11487         not st.st[am]time.
11488
11489 2002-04-30  Bruno Haible  <bruno@clisp.org>
11490
11491         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
11492         the encoding if it already has slashes.
11493         Reported by Perry Rapp <prapp@erols.com>.
11494
11495 2002-12-11  Roland McGrath  <roland@redhat.com>
11496
11497         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
11498         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
11499         Turn off PIC for compiling this file.
11500
11501 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
11502
11503         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
11504         definitions.  Not needed.
11505         [_LIBC]: Use definitions from libc-lock.h instead of referencing
11506         pthread routines directly.
11507         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
11508         mutex_init calls.
11509         (arena_get2): Don't look at return value of mutex_lock.
11510
11511 2002-12-11  Roland McGrath  <roland@redhat.com>
11512
11513         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
11514         elf-init.o instead of compiling a PIC version.
11515
11516 2002-12-11  Bruno Haible  <bruno@clisp.org>
11517
11518         * intl/gettext.h: Renamed to ...
11519         * intl/gmo.h: ... here.
11520         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
11521         * intl/gettextP.h: Update.
11522         * intl/loadmsgcat.c: Update.
11523
11524         * intl/gettextP.h (PARAMS): Make more portable.
11525         (attribute_hidden): Define as empty macro if not already defined.
11526         * intl/hash-string.h (PARAMS): Make more portable.
11527         * intl/loadinfo.h (PARAMS): Likewise.
11528         * intl/plural-exp.h (PARAMS): Likewise.
11529         (attribute_hidden): Move definition near the definition of
11530         internal_function.
11531
11532         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
11533         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
11534
11535 2002-07-13  Bruno Haible  <bruno@clisp.org>
11536
11537         * intl/dcigettext.c (freea): New macro.
11538         (FREE_BLOCKS): Free also the registered blocks.
11539         (DCIGETTEXT): Free the 'search' variable.
11540         Reported by Andreas Fischer <a.fischer@asentics.de>.
11541
11542 2002-04-27  Bruno Haible  <bruno@clisp.org>
11543
11544         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
11545         * intl/dcigettext.c: Likewise.
11546         * intl/dcgettext.c: Likewise.
11547         * intl/dgettext.c: Likewise.
11548         * intl/gettext.c: Likewise.
11549         * intl/dcngettext.c: Likewise.
11550         * intl/dngettext.c: Likewise.
11551         * intl/ngettext.c: Likewise.
11552         * intl/textdomain.c: Likewise.
11553         * intl/bindtextdom.c: Likewise.
11554         * intl/plural-exp.h: Likewise.
11555
11556 2002-01-02  Bruno Haible  <bruno@clisp.org>
11557
11558         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
11559
11560 2001-04-30  Bruno Haible  <bruno@clisp.org>
11561
11562         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
11563         default macro definitions.  Needed for mingw32.
11564
11565 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11566
11567         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
11568         __builtin_constant_p to macro parameter.
11569
11570         * sysdeps/generic/sigpause.c: Define all functions as weak.
11571         * sysdeps/posix/sigpause.c: Likewise.
11572
11573         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
11574         type size_t.
11575
11576 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
11577
11578         * elf/tst-array1.c (preinit_array, init_array, fini_array):
11579         Explicitly align the array to sizeof (void *).
11580         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
11581
11582         * include/libc-symbols.h: Fix a comment typo.
11583
11584         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
11585         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
11586         Likewise.
11587         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
11588         Likewise.
11589         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
11590         (__libc_sigsuspend): Likewise.
11591         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
11592         (__libc_sigsuspend): Likewise.
11593         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
11594         (creat): New weak alias.
11595
11596 2002-12-10  Roland McGrath  <roland@redhat.com>
11597
11598         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
11599         contributes a manual chapter.
11600         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
11601         around xref to it.
11602
11603         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
11604         and move contents to ...
11605         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
11606         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
11607         it instead of duplicating its contents.
11608         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
11609
11610 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
11611
11612         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
11613         defined.
11614         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
11615         function.
11616         (EXTRA_LD_ENVVARS): Use it.
11617         (DL_OSVERSION_INIT): Define.
11618         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
11619         dl-librecon.h.
11620         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
11621
11622 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
11623
11624         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
11625
11626         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
11627         call.  It is not allowed to destroy pthread mutexes which are
11628         still in use even though it is safe for our implementations.  If
11629         somebody still uses the descriptor it is a bug.
11630
11631 2002-12-09  Richard Henderson  <rth@redhat.com>
11632
11633         * csu/abi-note.S: Use .p2align, not .align.
11634
11635 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
11636
11637         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
11638         __libc_select aliases.
11639
11640         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
11641         alias.
11642
11643         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
11644
11645         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
11646
11647         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
11648
11649         * sysdeps/unix/syscalls.list: Define __libc_select alias.
11650
11651         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
11652
11653         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
11654         __libc___xpg_sigpause aliases.
11655
11656         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
11657
11658         * misc/error.c: Remove use of USE_IN_LIBIO.
11659
11660 2002-12-08  Roland McGrath  <roland@redhat.com>
11661
11662         * elf/Makefile (tests): Uncomment tst-array[123].
11663         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
11664         * csu/elf-init.c: New file.
11665         * csu/Makefile (routines, static-only-routines): Add elf-init.
11666         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
11667         and __libc_csu_fini in place of _fini.
11668         * sysdeps/arm/elf/start.S: Likewise.
11669         * sysdeps/cris/elf/start.S: Likewise.
11670         * sysdeps/hppa/elf/start.S: Likewise.
11671         * sysdeps/i386/elf/start.S: Likewise.
11672         * sysdeps/ia64/elf/start.S: Likewise.
11673         * sysdeps/m68k/elf/start.S: Likewise.
11674         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
11675         * sysdeps/mips/elf/start.S: Likewise.
11676         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
11677         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
11678         * sysdeps/s390/s390-32/elf/start.S: Likewise.
11679         * sysdeps/s390/s390-64/elf/start.S: Likewise.
11680         * sysdeps/sh/elf/start.S: Likewise.
11681         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
11682         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
11683         * sysdeps/x86_64/elf/start.S: Likewise.
11684
11685         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
11686         struct containing function ptr and value, free it.
11687         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
11688         It's not safe to let the new thread use the SIGEV pointer.
11689
11690 2001-10-20  Paul Eggert  <eggert@twinsun.com>
11691
11692         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
11693         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
11694         Use strerror_r that is only a macro, even if it is not a function.
11695         (strerror): Check for HAVE_DECL_STRERROR before declaring.
11696         (private_strerror): Use prototypes, not old-style function definition.
11697         (print_errno_message): New function.
11698         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
11699         char*-flavored one.
11700         (error_tail, error, error_at_line): Use it.
11701
11702 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
11703
11704         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
11705
11706 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
11707
11708         * scripts/output-format.sed: Fix bug in one of the s expressions
11709         which used / for one too many things.
11710
11711         * include/unistd.h: Declare __libc_close.
11712
11713 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11714
11715         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
11716
11717 2002-12-07  Roland McGrath  <roland@redhat.com>
11718
11719         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
11720         from 2002-12-06, but remove unnecessary memset call without removing
11721         necessary copy of initialization image.
11722
11723         * Makerules ($(common-objpfx)format.lds): New target.
11724         (common-generated): Add it.
11725         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
11726         * scripts/output-format.sed: New file.
11727         * Makefile (distribute): Add it.
11728
11729 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
11730
11731         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
11732         Reported by Art Haas <ahaas@airmail.net>.
11733
11734 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
11735
11736         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
11737
11738 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11739
11740         * string/test-strncpy.c (do_random_tests): Improve test coverage.
11741
11742 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11743
11744         * test-skeleton.c (timeout_handler): Allow expected signal to be
11745         SIGALRM.
11746
11747         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
11748
11749         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
11750
11751 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
11752
11753         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
11754         (SYSCALL_ERROR_HANDLER): Fix a pasto.
11755         Reported by Jeff Bailey <jbailey@nisa.net>.
11756
11757 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11758
11759         * sysdeps/generic/libc-tls.c: Undo last patch.
11760
11761         * include/wctype.h: Define iswalnum with libc_hidden_proto.
11762
11763         * include/signal.h: Define raise with libc_hidden_proto.
11764
11765         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
11766         __execve instead of snprintf and execve.
11767
11768         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
11769         again a bit.
11770
11771 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
11772
11773         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
11774         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
11775
11776 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
11777
11778         * misc/syslog.c (log_cleanup): New function.
11779         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
11780         (closelog): Likewise.
11781
11782         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
11783         * elf/dl-iteratephdr.c: Likewise.
11784         * elf/dl-lookup.c: Likewise.
11785         * elf/dl-misc.c: Likewise.
11786         * elf/dl-open.c: Likewise.
11787         * elf/dl-support.c: Likewise.
11788         * elf/rtld.c: Likewise.
11789         * sysdeps/generic/ldsodefs.h: Likewise.
11790         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
11791         * sysdeps/mach/bits/libc-lock.h: Likewise.
11792         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
11793
11794 2002-12-06  Roland McGrath  <roland@redhat.com>
11795
11796         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
11797
11798         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
11799         (malloc_starter, memalign_starter, free_starter): Don't define these.
11800         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
11801         Don't declare them either.
11802         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
11803         __pthread_initialize, so no need to set hooks to *_starter.
11804         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
11805         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
11806         (__libc_malloc_pthread_startup): New function.
11807         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
11808
11809         * malloc/hooks.c (memalign_starter): New function.
11810         * malloc/malloc.c: Declare it.
11811         * malloc/arena.c (save_memalign_hook): New variable.
11812         (ptmalloc_init): Set __memalign_hook to memalign_starter.
11813
11814         * elf/dl-minimal.c (free): Clear the memory.
11815         (calloc): Just call malloc, knowing all memory it returns is cleared.
11816
11817         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
11818         malloc and memset; calloc can avoid the zeroing when redundant.
11819         (_dl_tls_setup): Likewise.
11820         * elf/dl-load.c (decompose_rpath): Likewise.
11821         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
11822         call, since memory from sbrk at startup is already zero.
11823
11824         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
11825         error string for failure, null for success.  Update callers.
11826         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
11827         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
11828
11829 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
11830
11831         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
11832         args to i:iipi.
11833         (readahead): Change args to i:iii.
11834         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
11835         Change args to i:iii.
11836         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
11837         args to i:iiii.
11838
11839 2002-12-05  Roland McGrath  <roland@redhat.com>
11840
11841         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
11842         call all functions rather than none.
11843         Reported by Mark P. Mitchell <mark@codesourcery.com>.
11844
11845 2002-12-04  Roland McGrath  <roland@redhat.com>
11846
11847         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
11848         on _nl_current_LC_* variables.
11849
11850 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
11851
11852         * dirent/bug-readdir1.c (main): Don't call closedir, just close
11853         the file descriptor.  This is testing what the bug report was about.
11854
11855 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
11856
11857         * po/be.po: New file.
11858
11859         * argp/Makefile (tests): Add tst-argp1.
11860
11861         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
11862         Change type of _attribute to void*.
11863         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
11864         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
11865         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
11866         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
11867         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
11868
11869 2002-12-04  Roland McGrath  <roland@redhat.com>
11870
11871         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
11872         members to the end, so a libpthread compiled with !USE_TLS will still
11873         find other members properly.
11874
11875         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
11876         operand for DEST memory.  Fix dummy input operand to use SRC.
11877         Reported by Davin McCall <davmac@ozonline.com.au>.
11878
11879         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
11880         alignment when initializing the DTV entry.
11881
11882         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
11883         when TLS has not been set up, try to set it up if we can.
11884         * elf/tst-tls4.c: Revert last change.
11885         * elf/tst-tls5.c: Likewise.
11886         * elf/tst-tls6.c: Likewise.
11887         * elf/tst-tls7.c: Likewise.
11888         * elf/tst-tls8.c: Likewise.
11889         * elf/tst-tls9.c: Likewise.
11890
11891         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
11892         * sysdeps/generic/ldsodefs.h: Declare it.
11893         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
11894         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
11895         function, broken out of __libc_setup_tls.
11896         (init_static_tls): Likewise.
11897         (__libc_setup_tls): Call them.
11898         (_dl_tls_setup): New function, uses new subroutines.
11899
11900         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
11901         Clear the pointer when returning true.
11902         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
11903         first element of the slotinfo list too.
11904
11905         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
11906         [SHARED].
11907
11908         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
11909         (_dl_determine_tlsoffset): Likewise.
11910
11911         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
11912         startup_error_tsd, made global.
11913         (dl_main): Update initialization.
11914         * elf/dl-tsd.c: Likewise.
11915         * sysdeps/generic/ldsodefs.h: Declare it.
11916
11917 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11918
11919         * manual/texinfo.tex: Update from latest upstream version.
11920
11921 2002-12-03  Roland McGrath  <roland@redhat.com>
11922
11923         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
11924         area surplus in calculation for sbrk call.
11925
11926         * iconvdata/cp1125.c: New file.
11927         * iconvdata/Makefile (distribute): Add it.
11928         (modules): Add CP1125.
11929         (gen-8bit-gap-modules): Add cp1125.
11930         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
11931         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
11932
11933 2002-12-03  Andreas Jaeger  <aj@suse.de>
11934
11935         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
11936
11937 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
11938
11939         * sysdeps/posix/system.c (do_system): Make signal handler
11940         installation thread safe.
11941
11942 2002-12-02  Roland McGrath  <roland@redhat.com>
11943
11944         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
11945         caller from EXTRA to -.
11946         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
11947         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
11948         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
11949
11950 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
11951
11952         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
11953         bits of RM are cleared.
11954
11955 2002-12-02  Roland McGrath  <roland@redhat.com>
11956
11957         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
11958         TLS setup is required.
11959         * elf/tst-tls5.c: Likewise.
11960         * elf/tst-tls6.c: Likewise.
11961         * elf/tst-tls7.c: Likewise.
11962         * elf/tst-tls8.c: Likewise.
11963         * elf/tst-tls9.c: Likewise.
11964
11965         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
11966         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
11967         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
11968         for being null before calling free_slotinfo.
11969         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
11970         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
11971
11972 2002-11-30  Bruno Haible  <bruno@clisp.org>
11973
11974         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
11975         (struct __gconv_step): New field __btowc_fct.
11976         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
11977         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
11978         __BUILTIN_TRANS.
11979         (__gconv_btwoc_ascii): New declaration.
11980         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11981         (__gconv_btwoc_ascii): New function.
11982         * iconv/gconv_builtin.h: Add BtowcFct argument to all
11983         BUILTIN_TRANSFORMATION invocations.
11984         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
11985         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
11986         * iconv/gconv_builtin.c (map): New field btowc_fct.
11987         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
11988         btowc_fct field.
11989         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
11990         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
11991         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
11992         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
11993         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
11994         (gconv_init): Initialize __btowc_fct field.
11995         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
11996         * iconv/loop.c: Document ONEBYTE_BODY.
11997         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
11998         Undefine ONEBYTE_BODY at the end.
11999         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
12000         * iconvdata/8bit-gap.c (NONNUL): New macro.
12001         (BODY for FROM_LOOP): Use it.
12002         (ONEBYTE_BODY): New macro.
12003         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
12004         (NONNUL): New macro.
12005         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
12006         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
12007         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
12008         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
12009         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
12010         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
12011         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
12012         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
12013         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
12014         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
12015         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
12016         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
12017         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
12018         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
12019         * iconvdata/ibm932.c: Include <stdbool.h>.
12020         (TRUE, FALSE): Remove macros.
12021         (BODY for FROM_LOOP): Remove unused variable rp1.
12022         (ONEBYTE_BODY): New macro.
12023         (BODY for TO_LOOP): Use bool.
12024         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
12025         * iconvdata/ibm943.c: Include <stdbool.h>.
12026         (TRUE, FALSE): Remove macros.
12027         (BODY for FROM_LOOP): Remove unused variable rp1.
12028         (ONEBYTE_BODY): New macro.
12029         (BODY for TO_LOOP): Use bool.
12030         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
12031         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
12032         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
12033         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
12034         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
12035         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
12036         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
12037         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
12038         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
12039         * iconvdata/gbbig5.c: Tweak comment.
12040
12041 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
12042
12043         * po/fi.po: Update from translation team.
12044
12045 2002-12-01  Roland McGrath  <roland@redhat.com>
12046
12047         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
12048         testing getdents64 return value.
12049
12050         * scripts/versions.awk: Don't pass -n flag to sort command.
12051
12052         * posix/bug-regex13.c: Include <string.h>.
12053
12054         * sysdeps/generic/libc-start.c (__libc_start_main): Do
12055         DL_SYSDEP_OSCHECK here.
12056         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
12057         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
12058
12059         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
12060         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
12061
12062         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
12063         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
12064
12065         * include/link.h: Comment typo fix.
12066
12067 2002-12-01  Roland McGrath  <roland@frob.com>
12068
12069         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
12070         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
12071         _POSIX_MEMORY_PROTECTION): Likewise.
12072         (_POSIX_POLL, _POSIX_SELECT): Removed.
12073
12074 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12075
12076         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
12077         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
12078
12079 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
12080
12081         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
12082         USE___THREAD.
12083         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
12084         "=v" constraints.
12085
12086 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
12087
12088         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
12089         branch prediction buffers by using unpaired call/ret.
12090
12091 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
12092
12093         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
12094         first parameters constraint string.
12095         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
12096
12097 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
12098
12099         * posix/regcomp.c (parse_expression): Set the bit since the back
12100         reference is used in the regular expression.
12101         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
12102         of malloc failure.
12103         (re_node_set_init_copy): Likewise.
12104         * posix/regex_internal.h (state_array_t): New structure.
12105         (re_sub_match_last_t): Likewise.
12106         (re_sub_match_top_t): Likewise.
12107         (re_match_context_t): Add new members.
12108         (re_dfa_t): Likewise.
12109         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
12110         to check the matching is really correct, and retry if failed.
12111         Move the routin pruning the impossible nodes from here, ...
12112         (prune_impossible_nodes): To this function.
12113         (check_matching): Invoke check_subexp_matching_top, and replace
12114         redundant checking with transit_state_bkref invocation.
12115         (proceed_next_node): Replace strncmp with memcmp.  Reported by
12116         Paolo Bonzini  <bonzini@gnu.org>.
12117         (update_cur_sifted_state): Remove search_subexp invocation.
12118         (search_subexp): Remove this function.
12119         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
12120         optimization.
12121         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
12122         Remove unused invocation of match_ctx_add_entry.
12123         (transit_state): Invoke check_subexp_matching_top.
12124         (check_subexp_matching_top): New function.
12125         (transit_state_bkref): Remove unused array.
12126         Merge transit_state_bkref_loop.
12127         (transit_state_bkref_loop): Use get_subexp instead of
12128         sift_states_backward.  Use search_cur_bkref_entry for optimization.
12129         Merge this function to transit_state_bkref.
12130         (get_subexp): New function.
12131         (get_subexp_sub): Likewise.
12132         (find_subexp_node): Likewise.
12133         (check_arrival): Likewise.
12134         (check_arrival_expand_ecl): Likewise.
12135         (check_arrival_expand_ecl_sub): Likewise.
12136         (expand_bkref_cache): Likewise.
12137         (match_ctx_init): Initialize new members.
12138         (match_ctx_clean): New function.
12139         (match_ctx_free): Release new members.
12140         (match_ctx_free_subtops): New function.
12141         (match_ctx_add_entry): Fix indent.
12142         (search_cur_bkref_entry): New function.
12143         (match_ctx_add_subtop): Likewise.
12144         (match_ctx_add_sublast): Likewise.
12145
12146 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
12147
12148         * iconv/Makefile (tests): Remove tst-iconv4.c
12149         * iconv/tst-iconv4.c: Moved to...
12150         * iconvdata/tst-iconv4.c: ...here.  New file.
12151         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
12152
12153 2002-11-25  Roland McGrath  <roland@redhat.com>
12154
12155         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
12156         Grok AF_LINK if defined.
12157         From Momchil Velikov <velco@fadata.bg>.
12158
12159         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
12160         brdaddr, or dstaddr, just set those pointers to null and don't fail.
12161         Reported by Momchil Velikov <velco@fadata.bg>.
12162
12163         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
12164         is > sizeof IFR->ifa_addr, advance past the whole longer length.
12165         (__ifreq): Count up NIFS that way too.
12166         Reported by Momchil Velikov <velco@fadata.bg>.
12167
12168         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
12169
12170         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
12171         and <fpu_control.h>.
12172
12173 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
12174
12175         * elf/elf.h (EM_ST19): Fix typo.
12176
12177 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
12178
12179         * include/errno.h (__set_errno): Define as errno = val
12180         unconditionally.
12181
12182 2002-11-24  Roland McGrath  <roland@redhat.com>
12183
12184         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
12185         * sysdeps/posix/writev.c: Likewise.
12186         From Momchil Velikov <velco@fadata.bg>.
12187
12188         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
12189         calling *GL(dl_error_catch_tsd) for a thread-local location.
12190         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
12191         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
12192         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
12193
12194         * libio/iofflush.c: Add libc_hidden_def.
12195         * libio/iofwrite.c: Likewise.
12196         * sysdeps/generic/sigtimedwait.c: Likewise.
12197         * sysdeps/generic/sigwaitinfo.c: Likewise.
12198         * sysdeps/posix/sigwait.c: Likewise.
12199         Reported by Momchil Velikov <velco@fadata.bg>.
12200
12201         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
12202         to match <arpa/inet.h> declaration.
12203         * inet/inet_netof.c (inet_netof): Likewise.
12204         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
12205         Reported by Momchil Velikov <velco@fadata.bg>.
12206
12207         * configure.in: Skip AUTOCONF check under --without-cvs.
12208         * configure: Regenerated.
12209
12210         * posix/Makefile (headers): Add bits/pthreadtypes.h.
12211         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
12212         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
12213
12214 2002-11-24  Andreas Schwab  <schwab@suse.de>
12215
12216         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
12217         with six arguments.
12218
12219 2002-11-19  Jim Meyering  <jim@meyering.net>
12220
12221         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
12222         as `static'.
12223         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
12224
12225 2002-11-23  Roland McGrath  <roland@redhat.com>
12226
12227         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
12228         Just produce hex output for datum sizes.
12229
12230         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
12231         Reported by Luca Barbieri <ldb@ldb.ods.org>.
12232
12233 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
12234
12235         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
12236         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12237         and __unused3 fields.
12238         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
12239         [__WORDSIZE == 32]: Only PPC32 requires __unused1
12240         and __unused2 fields.
12241         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
12242         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
12243         __unused3, and __unused4 fields.
12244
12245         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
12246         obtain lowest address for profiling in __monstartup call.
12247
12248 2002-11-21  Roland McGrath  <roland@redhat.com>
12249
12250         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
12251         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
12252
12253         * locale/localeinfo.h (struct locale_data): Revert last change.
12254
12255         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
12256         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12257
12258         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
12259         __NR_pread64 if not defined.
12260         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
12261         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12262
12263 2002-11-21  Roland McGrath  <roland@frob.com>
12264
12265         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
12266         __libc_multiple_libcs here.  Call __setfpucw.
12267
12268 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
12269
12270         * elf/Makefile (tests): Don't run test-arrayX tests for now.
12271
12272         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
12273         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
12274         CLONE_CHILD_*TID flags.
12275
12276 2002-11-20  Andreas Jaeger  <aj@suse.de>
12277
12278         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
12279         We pass struct ucontext on x86-64.
12280         (GET_PC): Adjust.
12281         (GET_FRAME): Adjust.
12282         (GET_STACK): Adjust.
12283
12284 2002-11-20  Roland McGrath  <roland@redhat.com>
12285
12286         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
12287         conditionalize [! DO_VERSIONING] #error.
12288
12289         * scripts/abilist.awk: Grok function descriptor symbols.
12290
12291         * intl/tst-gettext.c (main): Check return values from setlocale.
12292         Add necessary unsetenv's to make LANG=existing-locale check work.
12293
12294         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
12295         so aborted prior runs don't confuse things.
12296
12297         * locale/localeinfo.h (struct locale_data: union locale_data_value):
12298         Use uintptr_t instead of unsigned int for `word' member.
12299         (_NL_CURRENT_WORD): Cast to uint32_t.
12300
12301         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
12302         value.
12303
12304 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
12305
12306         * elf/tls-macros.h: Add IA-64 definitions.
12307         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
12308
12309         * iconv/Makefile (tests): Add tst-iconv4.
12310         * iconv/tst-iconv4.c: New file.
12311
12312         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
12313         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
12314         __GCONV_INCOMPLETE_INPUT.
12315         (ucs4le_internal_loop): Likewise.
12316         (ucs4le_internal_loop_unaligned): Likewise.
12317         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
12318         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
12319         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
12320
12321         * iconv/loop.c (LOOPFCT): First test for empty input then for full
12322         output buffer.
12323
12324         * inet/getnameinfo.c: Use extend_alloca where appropriate.
12325         * sysdeps/posix/getaddrinfo.c: Likewise.
12326
12327         * include/alloca.h (extend_alloca): New define.  Based on stack
12328         direction it'll try to append to the previouls allocated buffer.
12329
12330 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
12331
12332         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
12333         use the same service for AF_INET and AF_INET6.
12334
12335 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12336
12337         * intl/localealias.c (read_alias_file): Use only about 400 bytes
12338         of stack space instead of 16k.
12339
12340 2002-11-18  Wolfram Gloger  <wg@malloc.de>
12341
12342         * malloc/arena.c
12343         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
12344         nothing if not initialized.  Bug report from Marcus Brinkmann
12345         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
12346
12347 2002-11-19  Roland McGrath  <roland@redhat.com>
12348
12349         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
12350         sched_setaffinity.
12351
12352         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
12353         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
12354         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
12355         * configure: Regenerated.
12356
12357 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
12358
12359         * include/dlfcn.h: __libc_dlopen is now a macro calling
12360         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
12361         (__libc_dlopen_mode): New prototype.
12362         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
12363         new parameter.  Store new parameter in mode field of structure passed
12364         to do_dlopen.
12365         (struct do_dlopen_args): Add new field mode.
12366         (do_dlopen): Pass mode from parameter structure to _dl_open.
12367
12368 2002-11-11  Randolf Chung  <tausq@debian.org>
12369
12370         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
12371         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
12372         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
12373
12374         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
12375
12376         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
12377         Set -mdisable-fpregs for this file.
12378
12379 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
12380
12381         * sysdeps/unix/sysv/linux/configure.in:
12382         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
12383         from gcc-3.0 era for backwards compatibility.
12384         * sysdeps/unix/sysv/linux/configure: Regenerate.
12385
12386         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
12387         Define mcontext_t as a sigcontext.
12388
12389 2002-11-18  Roland McGrath  <roland@redhat.com>
12390
12391         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
12392         Free memory in `last_result' if it was used.
12393
12394         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
12395         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
12396         Do the parsing inline instead of copying strings and calling
12397         inet_network, and properly skip all alias names not matching the form.
12398
12399         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
12400
12401 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
12402
12403         * manual/pattern.texi (Wordexp Example): Fix sample code.
12404
12405         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
12406         childs stack which will be loaded into the %esi register.
12407
12408 2002-11-14  Paul Eggert  <eggert@twinsun.com>
12409
12410         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
12411         overflow when skipping the question part and when unpacking aliases.
12412
12413 2002-11-15  Roland McGrath  <roland@redhat.com>
12414
12415         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
12416         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
12417         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
12418
12419 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
12420
12421         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
12422         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
12423
12424 2002-11-15  Roland McGrath  <roland@redhat.com>
12425
12426         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
12427         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
12428         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
12429         (+make-include-of-dep): New canned sequence.
12430
12431         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
12432         From Dmitry V. Levin <ldv@altlinux.org>.
12433
12434 2002-11-14  Roland McGrath  <roland@redhat.com>
12435
12436         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
12437         * inet/herrno.c (__libc_h_errno): Likewise.
12438         * resolv/res_libc.c (__libc_res): Likewise.
12439         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
12440         (__res_state) [! USE___THREAD]: Don't define as weak.
12441         * csu/Versions: Revert last change.
12442         * resolv/Versions: Revert last change.
12443
12444         * Makerules ($(common-objpfx)%.make): New pattern rule.
12445         * tls.make.c: New file.
12446         * Makefile (distribute): Add it.
12447
12448         * sysdeps/generic/errno.c [! USE___THREAD]
12449         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
12450         with compat_symbol so they are not link-time visible.
12451         [! USE___THREAD] (__libc_errno): New alias for errno.
12452         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12453         Add __libc_errno here.
12454         * inet/herrno.c [USE___THREAD]: Use this conditional
12455         in place of [USE_TLS && HAVE___THREAD].
12456         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
12457         (h_errno, _h_errno): Declare these with compat_symbol so they are not
12458         link-time visible.
12459         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
12460         * resolv/res_libc.c [! USE___THREAD]
12461         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
12462         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
12463         (__libc_res): Define as alias for _res.
12464         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
12465         Add __libc_h_errno and __libc_res here.
12466
12467 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
12468
12469         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
12470         * resolv/Versions (h_errno, _res): Likewise.
12471
12472 2002-11-14  Roland McGrath  <roland@redhat.com>
12473
12474         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
12475         (%.symlist): Likewise.
12476
12477 2002-11-13  Roland McGrath  <roland@redhat.com>
12478
12479         * scripts/abilist.awk: New file.
12480         * Makefile (distribute): Add it.
12481         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
12482         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
12483         [$(subdir) = elf] (tests): Depend on libc.symlist.
12484         (generated, common-generated): Add those files.
12485
12486         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
12487         * configure: Regenerated.
12488         * config.make.in (OBJDUMP): New variable, substituted by configure.
12489
12490         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
12491         (mallochook, reallochook): Set them up.
12492         (checkhdr): Check HDR->magic2 value.
12493         (freehook): Reset HDR->magic2.
12494         (memalignhook): New static function.
12495         (old_memalign_hook): New static variable.
12496         (mcheck, reallochook): Set __memalign_hook to memalignhook.
12497
12498         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
12499         for the new TCB.
12500
12501 2002-11-13  Andreas Jaeger  <aj@suse.de>
12502
12503         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
12504         attribute.
12505         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
12506
12507 2002-11-11  Paul Eggert  <eggert@twinsun.com>
12508
12509         * manual/crypt.texi (Cryptographic Functions): Mention that
12510         the MD5 one-way algorithm is compatible with BSD's.
12511
12512 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
12513
12514         * posix/regex_internal.c (re_string_skip_chars): Also return the last
12515         wide character.
12516         (re_string_reconstruct): Calculate the context by itself when the
12517         offset points out of the valid range.
12518         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
12519         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
12520         (IS_WIDE_WORD_CHAR): New macro.
12521         (IS_WIDE_NEWLINE): New macro.
12522
12523 2002-11-12  Andreas Jaeger  <aj@suse.de>
12524
12525         * sysdeps/x86_64/strchr.S: Don't use one register for two
12526         purposes, this fixes a bug noticed by test-strchr.c.
12527
12528         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
12529         correctly.
12530
12531 2002-11-12  Roland McGrath  <roland@redhat.com>
12532
12533         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
12534         (_G_IO_NO_BACKWARD_COMPAT): Define it.
12535
12536         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
12537         instead of <pt-machine.h>.
12538         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
12539         testandset.
12540         From Ian Wienand <ianw@gelato.unsw.edu.au>.
12541
12542 2002-11-10  Roland McGrath  <roland@redhat.com>
12543
12544         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
12545         Call fputs instead of fwprintf (simpler to follow in debugger).
12546
12547         * crypt/md5-crypt.c: Doc fix.
12548
12549         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
12550         the beginning of generated target commands.
12551
12552         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
12553         dependencies for these in case implicit rule search skipped the
12554         nonexistent source directory.
12555         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
12556         files with $(object-suffixes) as targets too.
12557         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
12558         and a target for it using $(make-target-directory).
12559
12560         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
12561
12562 2002-11-10  Roland McGrath  <roland@frob.com>
12563
12564         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
12565         * sysdeps/generic/bits/pthreadtypes.h: ... here.
12566
12567         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
12568         l_start == 0 and l_len == 1 as we do l_len == 0.
12569
12570 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
12571
12572         * po/da.po: Update from translation team.
12573
12574 2002-11-10  Roland McGrath  <roland@redhat.com>
12575
12576         * config.make.in (includedir): New variable, substituted by configure.
12577         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
12578         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
12579
12580 2002-11-10  Andreas Jaeger  <aj@suse.de>
12581
12582         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
12583         REG_OLDMASK and REG_CR2 to synch with kernel header.
12584         (NGREG): Increase.
12585
12586         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
12587         aliasing problem.
12588         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
12589         * nss/getnssent_r.c (__nss_getent_r): Likewise.
12590         (__nss_setent): Likewise.
12591         (__nss_getent_r): Likewise.
12592         * inet/getnetgrent_r.c (innetgr): Likewise.
12593         (__internal_setnetgrent_reuse): Likewise.
12594         (internal_getnetgrent_r): Likewise.
12595         * inet/ether_hton.c (ether_hostton): Likewise.
12596         * inet/ether_ntoh.c (ether_ntohost): Likewise.
12597         * sunrpc/netname.c (netname2user): Likewise.
12598         * sunrpc/publickey.c (getpublickey): Likewise.
12599         (getsecretkey): Likewise.
12600
12601 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
12602
12603         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
12604         error in range calculation.
12605
12606 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
12607
12608         * string/test-strspn.c (do_test): Ensure zero termination.
12609         * string/test-strpbrk.c (do_test): Likewise.
12610         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
12611         * string/test-strncpy.c (stupid_strncpy): Likewise.
12612         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
12613
12614 2002-10-08  Roland McGrath  <roland@redhat.com>
12615
12616         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
12617         nonzero characters.
12618
12619 2002-09-22  H.J. Lu  <hjl@gnu.org>
12620
12621         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
12622         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
12623         only if __NR_mmap2 is defined.
12624
12625         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
12626         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
12627         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
12628         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
12629
12630 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
12631
12632         * posix/bug-regex13.c (tests): Add new test.
12633
12634         * string/test-strchr.c (stupid_strchr): New function.
12635         (do_random_tests): Make sure the string is zero terminated.
12636         * string/test-strpbrk.c (stupid_strpbrk): New function.
12637         (do_random_tests): Make sure the string is zero terminated.
12638         * string/test-strcmp.c (stupid_strcmp): New function.
12639         (do_random_tests): Make sure the strings are zero terminated.
12640         * string/test-strspn.c (stupid_strspn): New function.
12641         (simple_strspn): Rename rej argument to acc.
12642         (do_random_tests): Make sure the string is zero terminated.
12643         * string/test-strcspn.c (stupid_strcspn): New function.
12644         * string/test-strncpy.c (stupid_strncpy): New function.
12645         * string/test-stpncpy.c (stupid_stpncpy): New function.
12646         * string/test-strncmp.c (stupid_strncmp): New function.
12647         (do_random_tests): Make sure the strings are zero terminated.
12648         * string/test-string.h (impl_t): Change test into long.
12649         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
12650
12651 2002-11-08  Roland McGrath  <roland@redhat.com>
12652
12653         * sysdeps/ia64/elf/configure.in: Add TLS check.
12654         From Ian Wienand <ianw@cse.unsw.edu.au>.
12655         * sysdeps/ia64/elf/configure: Regenerated.
12656
12657 2002-11-07  Roland McGrath  <roland@redhat.com>
12658
12659         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
12660         place of _IO_new_do_write.
12661         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
12662         #undef before versioned_symbol use.
12663
12664 2002-11-07  Richard Henderson  <rth@redhat.com>
12665
12666         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
12667         * configure: Regenerated.
12668         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
12669         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
12670         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
12671         _dl_fini via gp-relative relocations.
12672         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
12673
12674         * elf/tls-macros.h: Add alpha versions.
12675         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
12676         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
12677         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
12678         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
12679         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
12680         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
12681         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
12682         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
12683         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
12684         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
12685         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
12686         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
12687         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
12688         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
12689         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
12690         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
12691         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
12692         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
12693
12694         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
12695         Kill argument registers across the inline syscall.
12696
12697         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
12698
12699         * linuxthreads/sysdeps/alpha/tls.h: New file.
12700         * sysdeps/alpha/dl-tls.h: New file.
12701
12702 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
12703
12704         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
12705         (gmon_initializer): New function.
12706         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
12707         __gmon_start__ here.  Call it from gmon_initializer() instead.
12708
12709 2002-03-12  H.J. Lu  <hjl@gnu.org>
12710
12711         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
12712         tst-array2, and tst-array3.
12713         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
12714         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
12715         ($(objpfx)tst-array1.out): New target.
12716         ($(objpfx)tst-array2): Likewise.
12717         ($(objpfx)tst-array2.out): Likewise.
12718         ($(objpfx)tst-array3.out): Likewise.
12719         * elf/tst-array1.c: New file.
12720         * elf/tst-array1.exp: Likewise.
12721         * elf/tst-array2.c: Likewise.
12722         * elf/tst-array2dep.c: Likewise.
12723         * elf/tst-array2.exp: Likewise.
12724         * elf/tst-array3.c: Likewise.
12725
12726 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
12727
12728         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
12729         Don't add L->l_addr to array entry values.
12730
12731 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
12732
12733         * string/test-string.h: New file.
12734         * string/test-strlen.c: New file.
12735         * string/test-string.h: New file.
12736         * string/test-strcmp.c: New file.
12737         * string/test-strchr.c: New file.
12738         * string/test-strrchr.c: New file.
12739         * string/test-strcpy.c: New file.
12740         * string/test-stpcpy.c: New file.
12741         * string/test-strncpy.c: New file.
12742         * string/test-stpncpy.c: New file.
12743         * string/test-strpbrk.c: New file.
12744         * string/test-strcspn.c: New file.
12745         * string/test-strspn.c: New file.
12746         * string/test-strcat.c: New file.
12747         * string/test-strncmp.c: New file.
12748         * string/test-memchr.c: New file.
12749         * string/test-memcmp.c: New file.
12750         * string/test-memset.c: New file.
12751         * string/test-memcpy.c: New file.
12752         * string/test-mempcpy.c: New file.
12753         * string/test-memmove.c: New file.
12754         * string/Makefile (strop-tests): New variable.
12755         (tests): Add strop-tests.
12756         (distribute): Add test-string.h.
12757
12758 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12759
12760         * posix/regcomp.c: Use tabs instead of spaces.
12761         * posix/regexec.c: Likewise.
12762         * posix/regex_internal.h: Likewise.
12763
12764         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
12765
12766 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
12767
12768         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
12769         here.
12770         (regcomp): Don't set can_be_null here.
12771         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
12772         (re_compile_internal): Clear can_be_null, set regs_allocated.
12773
12774         * posix/regcomp.c (re_set_fastmap): New function.
12775         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
12776         COMPLEX_BRACKET check.
12777         * posix/regexec.c (re_search_internal): Optimize searching with
12778         fastmap.  Call re_string_reconstruct even if match_first is
12779         smaller than raw_mbs_idx.
12780
12781 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
12782
12783         * posix/regcomp (free_dfa_content): Use free_state.
12784         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
12785         pointers in case that realloc failed.
12786         (re_node_set_merge): Likewise.
12787         (register_state): Likewise.
12788         (create_newstate_common): Invoke memory release functions in case of
12789         error conditions.
12790         (create_ci_newstate): Likewise.
12791         (create_cd_newstate): Likewise.
12792         (free_state): New function.
12793         * posix/regexec.c (re_search_internal): Invoke memory release
12794         functions in case of error conditions.
12795         (sift_states_backward): Likewise.
12796         (merge_state_array): Likewise.
12797         (add_epsilon_src_nodes): Likewise.
12798         (sub_epsilon_src_nodes): Likewise.
12799         (search_subexp): Likewise.
12800         (sift_states_bkref): Likewise.
12801         (transit_state_sb): Likewise.
12802         (transit_state_mb): Likewise.
12803         (transit_state_bkref_loop): Likewise.
12804         (group_nodes_into_DFAstates): Likewise.
12805         (push_fail_stack): Don't edit pointers in case that realloc failed.
12806         (extend_buffers): Likewise.
12807         (match_ctx_add_entry): Likewise.
12808
12809 2002-11-06  Roland McGrath  <roland@redhat.com>
12810
12811         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
12812         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
12813
12814         * configure.in: Add checks on as and ld for binutils 2.13 or later.
12815         * configure: Regenerated.
12816
12817 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
12818
12819         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
12820         If re_compile_internal failed free fastmap buffer.
12821         (free_dfa_content): Broken out of regfree function.  Frees all dfa
12822         related data.
12823         (regfree): Add free_dfa_content.
12824         (re_compile_internal): If any of the called functions fails free
12825         all dfa related memory.
12826
12827 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12828
12829         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
12830         warnings from the kernel headers.
12831
12832 2002-11-05  Roland McGrath  <roland@redhat.com>
12833
12834         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
12835         From Johannes Stezenbach <js@convergence.de>.
12836
12837         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
12838         #errlist-compat magic comment to give 123 as size.
12839         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
12840         (libc: GLIBC_2.2): ... here.
12841         (libc: GLIBC_2.3): Likewise.
12842
12843 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12844
12845         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
12846         which happens at the beginning so that we can unload modules in
12847         __libc_freeres.
12848
12849 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
12850
12851         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
12852         under [__USE_MISC || _ASM].
12853
12854         * elf/elf.h: Remove the obsolete SH TLS relocations.
12855
12856 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12857
12858         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
12859
12860 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12861
12862         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
12863         __NR_pread64 and __NR_pwrite64.
12864         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
12865         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
12866         and __NR_pwrite64.
12867         Revert change to use INLINE_SYSCALL.
12868         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12869         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12870         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12871         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
12872         INLINE_SYSCALL.
12873         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12874
12875         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
12876         Update clobber list and add a comment about the syscall ABI.
12877
12878         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
12879         s_pwrite64, s_ftruncate, s_truncate): Re-add.
12880
12881 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
12882
12883         * iconv/gconv_dl.c (free_mem): Clear loaded.
12884         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
12885         cleanup if any.
12886
12887 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
12888
12889         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
12890
12891         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
12892         as old code without locking.  _IO_seekoff calls this function after
12893         locking the stream.
12894         * libio/ioseekpos.c: Likewise for _IO_seekpos.
12895         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
12896         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
12897         prototypes.
12898         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
12899         of _IO_seekoff_internal.
12900         (_IO_rewind): Likewise.
12901         * libio/ioftell.c: Likewise.
12902         * libio/ftello.c: Likewise.
12903         * libio/ftello64.c: Likewise.
12904         * libio/iofgetpos.c: Likewise.
12905         * libio/iofgetpos64.c: Likewise.
12906         * libio/oldiofgetpos.c: Likewise.
12907         * libio/oldiofgetpos64.c: Likewise.
12908         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
12909         _IO_seekpos_internal.
12910         * libio/iofsetpos64.c: Likewise.
12911         * libio/oldiofsetpos.c: Likewise.
12912         * libio/oldiofsetpos64.c: Likewise.
12913
12914 2002-11-04  Roland McGrath  <roland@redhat.com>
12915
12916         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
12917         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
12918         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
12919         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
12920         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12921         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
12922         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12923         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
12924         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
12925         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
12926         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
12927         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
12928         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
12929         Remove these, no longer used.
12930
12931 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
12932
12933         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
12934         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
12935         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
12936         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
12937         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
12938         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
12939         syscall stubs.
12940
12941         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
12942         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
12943         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
12944         and __NR_pread.
12945         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
12946         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
12947         and __NR_pwrite.
12948         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
12949
12950 2002-11-03  Roland McGrath  <roland@redhat.com>
12951
12952         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
12953         `_dl_tls_static_used'.
12954         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
12955         (__libc_setup_tls): Initialize it.  Let the initial value of
12956         _dl_tls_static_size indicate some surplus space in the computed value.
12957         * elf/dl-open.c (_dl_tls_static_size): New variable.
12958         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
12959         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
12960         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
12961         (CHECK_STATIC_TLS): Use it.
12962         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
12963         closed objects occupied a trailing contiguous chunk of static TLS area.
12964
12965 2002-10-18  Bruno Haible  <bruno@clisp.org>
12966
12967         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
12968
12969 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
12970
12971         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
12972         _wide_data->_IO_read_end if adjustment can be made in the current
12973         buffer.
12974
12975         * sysdeps/unix/sysv/linux/fexecve.c: New file.
12976
12977         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
12978         wide oriented streams are used.
12979
12980         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
12981         service hasn't been used [PR libc/4744].
12982
12983         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
12984         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
12985
12986         * manual/examples/dir.c: Don't include <stddef.h>.
12987         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
12988         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
12989
12990 2002-11-02  H.J. Lu  <hjl@gnu.org>
12991
12992         * stdio-common/reg-printf.c: Include <stddef.h>.
12993
12994 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
12995
12996         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
12997
12998         * po/ca.po: Update from translation team.
12999         * po/es.po: Likewise.
13000
13001         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
13002         is defined write out memory map.
13003         * sysdeps/unix/sysv/linux/segfault.c: New file.
13004
13005 2002-11-02  Roland McGrath  <roland@redhat.com>
13006
13007         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
13008         pointers that can alias.
13009         Reported by Daniel Jacobowitz <drow@mvista.com>.
13010
13011         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
13012
13013 2002-11-02  Roland McGrath  <roland@redhat.com>
13014
13015         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
13016         description to be clearer and to say that *RESULT is set to ENTRY.
13017
13018 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13019
13020         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
13021         dests_ch arrays together.  Alloca or malloc dest_states,
13022         dest_states_word and dest_states_nl arrays together.  Free memory on
13023         error exit.
13024
13025 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
13026
13027         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
13028         and current_saltbits.
13029
13030 2002-11-02  Roland McGrath  <roland@redhat.com>
13031
13032         * stdio-common/reg-printf.c: Include <stdlib.h>.
13033
13034 2002-11-02  H.J. Lu  <hjl@gnu.org>
13035
13036         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
13037         caller to EXTRA instead of execve.
13038
13039 2002-11-01  Roland McGrath  <roland@redhat.com>
13040
13041         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
13042         in place of [!(USE_TLS && HAVE___THREAD)].
13043         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
13044
13045 2002-10-31  Roger Sayle  <roger@eyesopen.com>
13046
13047         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
13048         New macros.
13049         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
13050
13051         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
13052         without defining FP_ROUNDMODE.
13053
13054 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
13055
13056         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
13057         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
13058         declare_symbol.
13059         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13060         (OLD_SIGLIST_SIZE): Define.
13061         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
13062         (OLD_SIGLIST_SIZE): Define.
13063         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
13064
13065 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
13066
13067         * sysdeps/ia64/strncpy.S: Fix recovery code.
13068
13069 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13070
13071         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
13072         New macros.
13073         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
13074         text_set_element.
13075         * elf/dl-libc.c (free_mem): Likewise.
13076         * iconv/gconv_conf.c (free_mem): Likewise.
13077         * iconv/gconv_db.c (free_mem): Likewise.
13078         * iconv/gconv_dl.c (free_mem): Likewise.
13079         * iconv/gconv_cache.c (free_mem): Likewise.
13080         * intl/finddomain.c (free_mem): Likewise.
13081         * intl/dcigettext.c (free_mem): Likewise.
13082         * locale/setlocale.c (free_mem): Likewise.
13083         * misc/fstab.c (fstab_free): Likewise.
13084         * nss/nsswitch.c (free_mem): Likewise.
13085         * posix/regcomp.c (free_mem): Likewise.
13086         * resolv/gai_misc.c (free_res): Likewise.
13087         * stdlib/fmtmsg.c (free_mem): Likewise.
13088         * sunrpc/clnt_perr.c (free_mem): Likewise.
13089         * sysdeps/generic/setenv.c (free_mem): Likewise.
13090         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
13091         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
13092         * time/tzset.c (free_mem): Likewise.
13093         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
13094         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
13095         * malloc/set-freeres.c (__libc_freeres): Likewise.
13096
13097         * login/getutent.c: Include stdlib.h instead of stddef.h.
13098         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13099         (__getutent): Allocate buffer the first time it is run.
13100         * login/getutid.c: Include stdlib.h instead of stddef.h.
13101         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13102         (__getutid): Allocate buffer the first time it is run.
13103         * login/getutline.c: Include stdlib.h instead of stddef.h.
13104         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
13105         (__getutline): Allocate buffer the first time it is run.
13106         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
13107         (mtrace): Allocate malloc_trace_buffer.
13108         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
13109         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
13110         * string/strerror.c: Include libintl.h and errno.h.
13111         (buf): New variable.
13112         (strerror): Only allocate buffer if actually needed (unknown error).
13113         * time/tzfile.c (transitions): Add libc_freeres_ptr.
13114         (freeres): Remove.
13115
13116 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
13117
13118         * include/libc-symbols.h (libc_freeres_ptr): New macro.
13119         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
13120         symbol_set_define.
13121         (__libc_freeres): Free all pointers in that section.
13122         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
13123         commands when creating .lds script.
13124         (LDSEDCMD-c.so): New variable.
13125         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13126         (rcmd_af): Use strdup to allocate ahostbuf.
13127         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
13128         (rexec_af): Use strdup to allocate ahostbuf.
13129         * stdio-common/reg-printf.c (printf_funcs): Remove.
13130         (__printf_arginfo_table): Change into printf_arginfo_function **.
13131         Add libc_freeres_ptr.
13132         (__register_printf_function): Allocate __printf_arginfo_table
13133         and __printf_function_table the first time it is called.
13134         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
13135         printf_arginfo_function **.
13136         (parse_one_spec): Add __builtin_expect.
13137         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
13138         (free_mem): Remove.
13139         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
13140         (free_mem): Remove.
13141         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
13142         (string_space, map): Add libc_freeres_ptr.
13143         (free_mem): Remove.
13144         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
13145         (free_mem): Remove.
13146         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
13147         (free_mem): Remove.
13148         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
13149         (buffer): Add libc_freeres_ptr.
13150         (free_mem): Remove for _LIBC.
13151         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
13152         (free_mem): Remove.
13153         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
13154         (free_mem): Remove.
13155         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
13156         (free_mem): Remove.
13157         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
13158         (free_mem): Remove.
13159         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
13160         (free_mem): Remove.
13161         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
13162         (free_mem): Remove.
13163         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
13164         libc_freeres_ptr.
13165         (free_mem): Remove.
13166         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
13167         libc_freeres_ptr.
13168         (free_mem): Remove.
13169
13170 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13171
13172         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
13173         instead of duplicating the whole function in libc.
13174
13175 2002-10-31  Roland McGrath  <roland@redhat.com>
13176
13177         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
13178         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
13179
13180 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
13181
13182         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
13183         32bit-predefine when creating .new32 list and -U for each
13184         32bit-predefine when creating .new64 list.
13185         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
13186
13187 2002-10-29  Andreas Schwab  <schwab@suse.de>
13188
13189         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
13190         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
13191
13192 2002-10-25  Roland McGrath  <roland@redhat.com>
13193
13194         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
13195         * sysdeps/unix/sysv/linux/configure: Regenerated.
13196
13197         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
13198         _dl_starting_up decl.
13199
13200 2002-10-20  H.J. Lu  <hjl@gnu.org>
13201
13202         * sysdeps/unix/sysv/linux/configure.in: Don't check
13203         /lib/modules/`uname -r`/build/include for kernel headers if
13204         cross compiling.
13205         * sysdeps/unix/sysv/linux/configure: Regenerated.
13206
13207 2002-10-25  Roland McGrath  <roland@redhat.com>
13208
13209         * math/math.h (M_LOG2El): Correct the value.
13210         From Stephen L Moshier <steve@moshier.net>.
13211
13212         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
13213         conditional from __libc_multiple_libcs access.  Remove kludge for weak
13214         symbol access with old compilers we no longer support.
13215         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
13216         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
13217
13218 2002-10-25  Roland McGrath  <roland@redhat.com>
13219
13220         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
13221         implement SV_RESETHAND by translating it to SA_RESETHAND.
13222
13223 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
13224
13225         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
13226         type on ELF64 platforms.
13227
13228 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
13229
13230         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
13231
13232         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
13233
13234 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
13235
13236         * elf/dl-misc.c: Include <sysdep.h>.
13237         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
13238
13239         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
13240         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13241         (INLINE_SYSCALL): Use that.
13242         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
13243         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13244         (INLINE_SYSCALL): Use that.
13245         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
13246         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
13247         (INLINE_SYSCALL): Use that.
13248         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
13249         dl-sysdep.h.
13250         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13251         (__INTERNAL_SYSCALL_STRING): Define.
13252         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
13253         dl-sysdep.h.
13254         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
13255         (__INTERNAL_SYSCALL_STRING): Define.
13256         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
13257         __SYSCALL_STRING to inline_syscall*.
13258         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
13259         New macros.
13260         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
13261         inline_syscall4, inline_syscall5, inline_syscall6): Add string
13262         argument.
13263
13264 2002-10-24  Roland McGrath  <roland@redhat.com>
13265
13266         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
13267         * sysdeps/unix/sysv/linux/init-first.c: Not here.
13268         * sysdeps/powerpc/elf/libc-start.c: Or here.
13269         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
13270         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
13271         * sysdeps/unix/sysv/aix/init-first.c: Or here.
13272         * sysdeps/generic/libc-start.c: Or here.
13273         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
13274         access with [! SHARED].
13275         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
13276
13277         * libio/bug-wfflush.c: New file.
13278         * libio/Makefile (tests): Add bug-wfflush.
13279
13280 2002-10-23  Roland McGrath  <roland@redhat.com>
13281
13282         * stdio-common/tst-fphex.c: New file.
13283         * stdio-common/Makefile (tests): Add tst-fphex.
13284         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
13285         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
13286         chars always before the value digits.
13287         Reported by James Antill <james.antill@redhat.com>.
13288
13289 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
13290
13291         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
13292         (free_mem): New function.
13293         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
13294         if not cross compiling.
13295         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
13296         (bug-regex14-ENV): Set.
13297         (bug-regex14-mem): New target.
13298         * posix/bug-regex14.c: New file.
13299
13300 2002-10-23  Roland McGrath  <roland@redhat.com>
13301
13302         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
13303         target, so we don't touch it when the link fails.
13304
13305         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
13306         Check for the result overflowing off_t and fail with EOVERFLOW.
13307         * libio/ioftell.c (_IO_ftell): Likewise.
13308         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
13309
13310         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
13311         use a temporary timeval on the stack for gettimeofday and copy it.
13312         * login/logout.c (logout): Likewise.
13313         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
13314
13315         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
13316         Use __SWORD_TYPE instead of int for member types.
13317         (struct statfs64): Likewise.
13318         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
13319         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
13320         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
13321         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
13322         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
13323
13324         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
13325         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
13326         (ST_NODIRATIME): Restore fixed value of 2048.
13327         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
13328         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
13329
13330         Rearranged <bits/types.h> definitions to reduce duplication.
13331         * sysdeps/generic/bits/types.h: Rewritten, using macros from
13332         <bits/wordsize.h> and new header <bits/typesizes.h>.
13333         * posix/Makefile (headers): Add bits/typesizes.h here.
13334         * sysdeps/generic/bits/typesizes.h: New file.
13335         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
13336         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
13337         * sysdeps/mach/hurd/bits/typesizes.h: New file.
13338         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
13339         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
13340         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
13341         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
13342         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
13343         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
13344         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
13345         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
13346         <bits/pthreadtypes.h> here, not in <bits/types.h>.
13347         * signal/signal.h: Likewise.
13348
13349         * streams/stropts.h: Include <bits/xtitypes.h>.
13350         * streams/Makefile (headers): Add bits/xtitypes.h here.
13351         * sysdeps/generic/bits/xtitypes.h: New file.
13352         * sysdeps/s390/bits/xtitypes.h: New file.
13353         * sysdeps/ia64/bits/xtitypes.h: New file.
13354         * sysdeps/x86_64/bits/xtitypes.h: New file.
13355
13356         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
13357         * sysdeps/generic/bits/ipctypes.h: New file.
13358         * sysdeps/mips/bits/ipctypes.h: New file.
13359         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
13360         * sysdeps/gnu/bits/msq.h: Likewise.
13361         * sysvipc/sys/ipc.h: Likewise.
13362
13363 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
13364
13365         * elf/dl-load.c (struct filebuf): For buf element to have the
13366         alignment of ElfXX_Ehdr since this is what will be stored in it.
13367
13368 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
13369
13370         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
13371         into pointer to locrec_offset.
13372         (add_locale_to_archive): Adjust callers.  Free normalized_name right
13373         before returning, not immediately after add_locale, pass it to
13374         add_alias if not NULL instead of name.  Rename second normalized_name
13375         occurence to nnormalized_codeset_name.
13376
13377         * locale/programs/locarchive.c (enlarge_archive): Make sure
13378         string_size is always a multiple of 4.
13379         Reported by Andreas Schwab <schwab@suse.de>.
13380
13381 2002-10-21  Andreas Schwab  <schwab@suse.de>
13382
13383         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
13384         caller to EXTRA instead of execve, since the latter has a
13385         higher-priority implementation in linuxthreads.
13386
13387 2002-10-21  Roland McGrath  <roland@redhat.com>
13388
13389         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
13390         slotinfo list's len member to the proper size, not just 1.
13391         Initialize static_map.l_tls_initimage.
13392
13393         * elf/dl-open.c (dl_open_worker): Fix loop searching for
13394         dtv_slotinfo_list element containing new modules' l_tls_modid.
13395
13396         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
13397         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
13398         * elf/Makefile (tests): Add tst-tls9.
13399         (tests-static): Add tst-tls9-static.
13400         (tst-tls9-static-ENV): New variable.
13401         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
13402
13403         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
13404         modids used by partially loaded modules being closed can't be known.
13405
13406 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
13407
13408         * posix/Makefile: Add a test case for the bug reported by Aharon
13409         Robbins <arnold@skeeve.com>.
13410         * posix/bug-regex13.c: New file.
13411         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
13412
13413 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
13414
13415         * csu/gmon-start.c: Pretty printing.
13416
13417 2002-10-19  Art Haas  <ahaas@neosoft.com>
13418
13419         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
13420         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
13421         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
13422         * configure: Regenerated.
13423
13424 2002-10-19  Roland McGrath  <roland@redhat.com>
13425
13426         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
13427         and then set $subdirs directly, because the new Autoconf breaks
13428         compatibility in every way imaginable and insists on whining
13429         about usage that worked since the dawn of time.
13430         * configure: Regenerated.
13431
13432         * configure: Regenerated (using Autoconf 2.54).
13433         * sysdeps/alpha/elf/configure: Likewise.
13434         * sysdeps/generic/configure: Likewise.
13435         * sysdeps/i386/elf/configure: Likewise.
13436         * sysdeps/ia64/elf/configure: Likewise.
13437         * sysdeps/mach/hurd/configure: Likewise.
13438         * sysdeps/mach/configure: Likewise.
13439         * sysdeps/unix/configure: Likewise.
13440         * sysdeps/unix/common/configure: Likewise.
13441         * sysdeps/unix/sysv/aix/configure: Likewise.
13442         * sysdeps/unix/sysv/linux/configure: Likewise.
13443         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
13444         * sysdeps/x86_64/elf/configure: Likewise.
13445
13446         * config.make.in: Nix completely-soft nonsense.
13447         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
13448         of machine directories instead of fpu subdirectory.
13449         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
13450         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
13451         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
13452         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
13453         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
13454         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
13455         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
13456         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
13457         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
13458         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
13459         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
13460         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
13461         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
13462         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
13463         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
13464         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
13465         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
13466         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
13467         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
13468         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
13469         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
13470         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
13471         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
13472         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
13473         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
13474         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
13475         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
13476         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
13477         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
13478         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
13479         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
13480         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
13481         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
13482         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
13483         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
13484         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
13485         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
13486         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
13487         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
13488         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
13489
13490 2002-10-19  Bruno Haible  <bruno@clisp.org>
13491
13492         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
13493
13494 2002-10-18  Roland McGrath  <roland@redhat.com>
13495
13496         * io/Makefile (routines): Add lchmod.
13497         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
13498         * sysdeps/generic/lchmod.c: New file.
13499         * sysdeps/mach/hurd/lchmod.c: New file.
13500         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
13501
13502 2002-10-18  Art Haas  <ahaas@neosoft.com>
13503
13504         * configure.in: Remove remaining AC_FD_CC macros, and replace
13505         AC_FD_MSG with AS_MESSAGE_FD.
13506
13507 2002-10-18  Roland McGrath  <roland@redhat.com>
13508
13509         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
13510         typos: VALUE -> FINALADDR.
13511
13512         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
13513         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
13514         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
13515         (inline_syscall6): Move these macros ...
13516         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
13517
13518         * configure.in (libc_link_dests, libc_link_sources): Remove these
13519         variables and the AC_LINK_FILES call.
13520
13521         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
13522         change to put new symbols here instead of in GLIBC_2.2.
13523         * sysdeps/powerpc/Subdirs: Move this file ...
13524         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
13525
13526 2002-10-07  Roland McGrath  <roland@redhat.com>
13527
13528         * sysdeps/generic/bits/time.h: Replaced with contents of the
13529         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
13530         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
13531         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
13532         macros is ok even for architectures that don't now implement them.
13533         * sysdeps/mach/hurd/bits/time.h: File removed.
13534         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
13535         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
13536         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
13537         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
13538         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
13539
13540 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
13541
13542         * configure.in: Replace obsolete AC_OUTPUT syntax with
13543         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
13544
13545         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
13546         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
13547
13548         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
13549         * sysdeps/alpha/elf/configure.in: Likewise.
13550         * sysdeps/i386/elf/configure.in: Likewise.
13551         * sysdeps/mach/hurd/configure.in: Likewise.
13552         * sysdeps/x86_64/elf/configure.in: Likewise.
13553
13554         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
13555
13556         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
13557         * sysdeps/generic/configure.in: Likewise.
13558         * sysdeps/i386/elf/configure.in: Likewise.
13559         * sysdeps/ia64/elf/configure.in: Likewise.
13560         * sysdeps/mach/configure.in: Likewise.
13561         * sysdeps/mach/hurd/configure.in: Likewise.
13562         * sysdeps/unix/configure.in: Likewise.
13563         * sysdeps/unix/common/configure.in: Likewise.
13564         * sysdeps/unix/sysv/aix/configure.in: Likewise.
13565         * sysdeps/unix/sysv/linux/configure.in: Likewise.
13566         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
13567         * sysdeps/x86_64/elf/configure.in: Likewise.
13568
13569         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
13570         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
13571         that it's obvious when extra autoconf machinery is being dragged in.
13572
13573 2002-10-18  Roland McGrath  <roland@redhat.com>
13574
13575         * configure.in: Remove bogus echo included in
13576         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
13577         * configure: Regenerated.
13578
13579 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
13580
13581         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
13582         (statfs_filesize_max): New function.
13583         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
13584         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
13585         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
13586         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
13587         statfs_filesize_max.
13588         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13589         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
13590         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
13591
13592 2002-10-17  Roland McGrath  <roland@redhat.com>
13593
13594         * configure.in (MIG): Just AC_SUBST it here.
13595         * configure: Regenerated.
13596         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
13597         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
13598         * sysdeps/mach/configure: Regenerated.
13599
13600         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
13601         and AC_PROVIDE([_AS_CR_PREPARE]).
13602
13603         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
13604         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
13605
13606         * elf/dl-support.c: Move _dl_tls_* variables to ...
13607         * sysdeps/generic/libc-tls.c: ... here.
13608
13609         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
13610         allow IDX to be one past the current last slotinfo entry.
13611         (_dl_close): Pass IMAP->l_init_called for that parameter.
13612
13613 2002-10-07  Andreas Schwab  <schwab@suse.de>
13614
13615         * aclocal.m4: Fix for autoconf 2.53.
13616         * configure.in: Likewise.  Require autoconf 2.53.
13617
13618 2002-10-08  Richard Henderson  <rth@redhat.com>
13619
13620         * soft-fp/op-4.h: Handle carry correctly in
13621         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
13622         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
13623         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
13624
13625 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
13626
13627         * configure.in: Compute completely-soft.
13628         * config.make.in: Make completely-soft available to sub-makes.
13629         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
13630         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
13631         fe_nomask to libm-support.
13632         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
13633         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
13634         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
13635         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
13636         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
13637         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
13638         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
13639         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
13640         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
13641         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
13642         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
13643         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
13644         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
13645         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
13646         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
13647         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
13648         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
13649         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
13650         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
13651         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
13652         __sim_round_mode.
13653         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
13654         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
13655         FP_HANDLE_EXCEPTIONS.
13656         Define FP_ROUNDMODE.
13657         Redefine FP_* macros to correspond to the FE_* bit positions.
13658         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
13659         Define externs for __sim_exceptions, __sim_disabled_exceptions,
13660         __sim_round_mode, __simulate_exceptions.
13661         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
13662         * sysdeps/powerpc/bits/fenv.h: ...to here.
13663
13664 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
13665
13666         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
13667         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
13668         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
13669         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
13670         __builtin_expect.
13671
13672 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
13673
13674         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
13675         __libc_res_nsend): New prototypes.
13676         * resolv/res_query.c (QUERYSIZE): Define.
13677         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
13678         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
13679         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
13680         res_nsend, pass answerp.
13681         (res_nquery): Changed into wrapper around __libc_res_nquery.
13682         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
13683         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
13684         instead of the non-__libc_ variants, pass them answerp.
13685         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
13686         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
13687         Added answerp argument.  Call __libc_res_nquery instead of
13688         res_nquery, pass answerp.
13689         (res_nquerydomain): Changed into wrapper around
13690         __libc_res_nquerydomain.
13691         * resolv/res_send.c: Include sys/ioctl.h.
13692         (MAXPACKET): Define.
13693         (send_vc): Change arguments.  Reallocate answer buffer if it is
13694         too small.
13695         (send_dg): Likewise.
13696         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
13697         Reallocate answer buffer if it is too small and hooks are in use.
13698         Adjust calls to send_vc and send_dg.
13699         (res_nsend): Changed into wrapper around __libc_res_nsend.
13700         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
13701         just 1K answer buffer on the stack, use __libc_res_nsearch instead
13702         of res_nsearch.
13703         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
13704         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
13705         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
13706         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
13707         (gethostbyaddr): Similarly with __libc_res_nquery.
13708         * resolv/Versions (libresolv): Export __libc_res_nquery and
13709         __libc_res_nsearch at GLIBC_PRIVATE.
13710
13711 2002-10-17  Roland McGrath  <roland@redhat.com>
13712
13713         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
13714         * configure: Regenerated.
13715
13716         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
13717         before performing the reloc, not after.
13718         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
13719
13720 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
13721
13722         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
13723         * locale/programs/linereader.c (lr_open): Likewise.
13724         * locale/programs/charmap-dir.c (charmap_open): Likewise.
13725         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
13726
13727 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
13728
13729         * posix/bug-regex11.c: Add a test case for the bug reported by
13730         Paolo Bonzini <bonzini@gnu.org>.
13731         * posix/regexec.c (sift_states_bkref): Use correct destination of
13732         the back reference.
13733
13734 2002-10-17  Roland McGrath  <roland@redhat.com>
13735
13736         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
13737         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
13738         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
13739         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
13740         Call it after performing TPOFF relocs.
13741         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
13742         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
13743         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
13744
13745         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
13746         when closing a partially-initialized object.
13747
13748         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
13749         instead of _dl_fatal_printf when we see PT_TLS.
13750
13751         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
13752         instead of $(libof-$<).
13753
13754 2002-10-16  Roland McGrath  <roland@redhat.com>
13755
13756         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
13757         instead of += to append, to be sure $(lib) gets expanded at defn time.
13758         (libof-$(cpp-src)): New variable, define this instead.
13759         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
13760         (lib): Don't use override.
13761         (CPPFLAGS-$(lib)): New variable, put -D's here.
13762         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
13763         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
13764         LIB found by $(libof-*) for basename, target, or source.
13765         * Makerules (CPPFLAGS-nonlib): New variable.
13766         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
13767         * locale/Makefile (lib): Likewise.
13768         * sunrpc/Makefile (lib): Likewise.
13769
13770         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
13771         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
13772         * sysdeps/unix/sysv/linux/pathconf.h: New file.
13773         (statfs_link_max): New function, guts from fpathconf.c.
13774         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
13775         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
13776         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
13777         to use the linux/pathconf.c code by #include rather than duplication.
13778         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
13779
13780 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13781
13782         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13783         Use __libc_errno only for libc itself.
13784
13785 2002-10-16  Andreas Jaeger  <aj@suse.de>
13786
13787         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
13788
13789 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
13790
13791         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
13792         Use __libc_errno only for libc itself.
13793
13794 2002-10-15  Roland McGrath  <roland@redhat.com>
13795             Jakub Jelinek  <jakub@redhat.com>
13796
13797         * sysdeps/unix/sysv/linux/Makefile
13798         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
13799         sparc/Makefile to produce a bi-arch file as needed.
13800         That's now parameterized by the variable $(64bit-predefine).
13801         Use LC_ALL=C for `comm' commands in that rule.
13802         No longer conditional on [$(no_syscall_list_h)].
13803         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
13804         (64bit-predefine): New variable.
13805         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
13806         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
13807         * sysdeps/unix/sysv/linux/powerpc/Makefile
13808         (64bit-predefine): New variable.
13809
13810 2002-10-15  Roland McGrath  <roland@redhat.com>
13811
13812         * sysdeps/unix/sysv/linux/Makefile
13813         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
13814
13815         * login/utmp-private.h: Declare __libc_utmp_lock.
13816         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
13817         and call __libc_utmp_jump_table functions directly, instead of using
13818         __setutent et al.
13819
13820         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
13821         * sysdeps/unix/sysv/linux/configure: Regenerated.
13822
13823         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
13824         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13825         Use int32_t for ll_time.
13826         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
13827         Use int32_t instead of long int for ut_session.
13828         Use an anonymous struct with 32-bit fields for ut_tv.
13829         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
13830         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
13831         here as in utmp.h for `struct utmp'.
13832         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
13833         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
13834         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
13835         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
13836         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
13837         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
13838
13839         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
13840         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
13841         All the following files were identical or equivalent to it.
13842         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
13843         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
13844         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
13845         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
13846         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
13847         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
13848         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
13849         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
13850         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
13851         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
13852
13853         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
13854         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
13855         Other than the previously incorrect sign of msg_iovlen, this is a
13856         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
13857         match their layouts as well, so the following are now identical to it.
13858         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
13859         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
13860         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
13861         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
13862         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
13863
13864 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13865
13866         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
13867         Define for 2.4+ kernels.
13868
13869         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
13870         are known to have the vfork syscall.  Don't confuse the CPUs
13871         branch prediction unit by jumping to the return address.
13872
13873         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
13874         support for reiserfs and xfs.
13875
13876         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
13877         XFS link count.
13878         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
13879         and XFS_LINK_MAX.
13880         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
13881
13882 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
13883
13884         * include/libc-symbols.h (attribute_tls_model_ie): Define.
13885         * include/errno.h (errno): Define to __libc_errno in libc.so.
13886         Add attribute_tls_model_ie.
13887         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
13888         Add attribute_tls_model_ie.
13889         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
13890         attribute_tls_model_ie.
13891         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
13892         (h_errno): Define.
13893         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
13894         (_res): Define.
13895         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
13896         attribute_tls_model_ie.
13897         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
13898         __thread.
13899         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
13900         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
13901         __libc_errno in USE___THREAD case.
13902         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
13903         Likewise.
13904         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
13905         __attribute__((tls_model (""))).
13906         * configure: Rebuilt.
13907         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
13908
13909 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
13910
13911         * timezone/asia: Update from tzdata2002d.
13912         * timezone/australasia: Likewise.
13913         * timezone/iso3166.tab: Likewise.
13914         * timezone/southamerica: Likewise.
13915         * timezone/zone-tab: Likewise.
13916
13917 2002-10-15  Roland McGrath  <roland@redhat.com>
13918
13919         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
13920         Adjust TCB pointer before calling free, so we get the whole block.
13921
13922 2002-10-14  Roland McGrath  <roland@redhat.com>
13923
13924         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
13925         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
13926         extern using attribute_hidden instead of static, avoids warning.
13927
13928 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
13929
13930         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
13931         * sysdeps/unix/sysv/linux/configure: Rebuilt.
13932
13933 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13934
13935         * po/sv.po: Update from translation team.
13936
13937 2002-10-12  H.J. Lu  <hjl@gnu.org>
13938
13939         * sunrpc/thrsvc.c (PROCQUIT): New.
13940         (struct rpc_arg): New.
13941         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
13942         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
13943         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
13944         (main): Modified for struct rpc_arg *.
13945
13946 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13947
13948         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
13949
13950 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
13951
13952         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
13953         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
13954         in ld.so even if __thread is supported.
13955
13956 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
13957
13958         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
13959         Add hack to prevent the compiler from clobbering the signal context.
13960         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
13961         Likewise.
13962         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
13963         Likewise.
13964
13965 2002-10-14  Andreas Jaeger  <aj@suse.de>
13966
13967         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
13968         Guido Guenther <agx@sigxcpu.org>.
13969
13970 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
13971
13972         * po/sk.po: Update from translation team.
13973
13974 2002-09-26  Roland McGrath  <roland@redhat.com>
13975
13976         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
13977         dynamic string tag.
13978         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
13979         DL_DST_LIB based on $(slibdir).
13980
13981 2002-10-13  Roland McGrath  <roland@frob.com>
13982
13983         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
13984
13985         * sysdeps/mach/hurd/getresuid.c: New file.
13986         * sysdeps/mach/hurd/getresgid.c: New file.
13987         * sysdeps/mach/hurd/setresuid.c: New file.
13988         * sysdeps/mach/hurd/setresgid.c: New file.
13989
13990         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
13991         setresgid): Declare them.
13992         * NEWS: Mention it.
13993         * include/unistd.h
13994         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
13995         add libc_hidden_proto.
13996         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
13997         getresuid, getresgid, setresuid, setresgid here.
13998         * Versions.def (libc): Define GLIBC_2.3.2 set.
13999         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
14000         Add libc_hidden_def.
14001         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
14002         * sysdeps/generic/setresgid.c: New file.
14003         * sysdeps/generic/setresuid.c: New file.
14004         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
14005         (sysdep_routines): Don't add getresuid and getresgid here.
14006         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
14007         (sysdep_routines): Don't add setresuid and setresgid here.
14008         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
14009         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
14010         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
14011         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
14012         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
14013         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
14014         * posix/Makefile (routines): Add them all here instead.
14015         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
14016         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
14017         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
14018         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
14019         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
14020         [! __NR_setresuid]: Include generic file.
14021         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
14022         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
14023         [! __NR_setresuid]: Include generic file.
14024         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
14025         Caller is - now, not EXTRA.
14026         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
14027         (setresuid, setresgid, getresuid, getresgid): Likewise.
14028         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
14029         Add these calls here.
14030         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
14031         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
14032         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
14033         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
14034         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
14035         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
14036         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
14037         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
14038         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
14039
14040         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
14041         (sysdep_routines): Add setfsuid and setfsgid here.
14042         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
14043         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
14044         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
14045         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
14046         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
14047         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
14048         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
14049         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
14050
14051         * hurd/errno.c: Renamed to ...
14052         * hurd/errno-loc.c: ... this.
14053         * hurd/Makefile (routines): errno -> errno-loc
14054
14055 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
14056
14057         * po/de.po: Update from translation team.
14058
14059         * MakeTAGS: Add -E flag to xgettext runs.
14060
14061 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14062
14063         * po/fr.po: Update from translation team.
14064
14065         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
14066         Optimize a bit for use in glibc.
14067
14068 2002-10-12  Roland McGrath  <roland@redhat.com>
14069
14070         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
14071         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
14072
14073 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14074
14075         * po/sv.po: Update from translation team.
14076
14077 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
14078
14079         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
14080         OP_CONTEXT_NODE.
14081         (regfree): Likewise.
14082         (create_initial_state): Likewise.
14083         (analyze): Remove the substitutions which became useless.
14084         (calc_first): Likewise.
14085         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
14086         epsilon destination.
14087         (duplicate_node_closure): New function.
14088         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
14089         (calc_inveclosure): Likewise.
14090         (calc_eclosure): Likewise.
14091         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
14092         direct invocation of duplicate_node.
14093         (parse): Don't use comma operator in the return to avoid compiler
14094         warning.
14095         (parse_reg_exp): Likewise.
14096         (parse_branch): Likewise.
14097         (parse_expression): Likewise.
14098         (parse_sub_exp): Likewise.
14099         (parse_dup_op): Likewise.
14100         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
14101         which became useless.
14102         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
14103         (create_cd_newstate): Likewise.
14104         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
14105         (re_token_t): Likewise.
14106         (re_dfa_t): Likewise.
14107         (re_node_set_remove): New macro.
14108         * posix/regexec.c (check_matching): Remove the handling
14109         OP_CONTEXT_NODE.
14110         (check_halt_node_context): Likewise.
14111         (proceed_next_node): Likewise.
14112         (pop_fail_stack): Fix the memory leak.
14113         (set_regs): Likewise.
14114         (free_fail_stack_return): New function.
14115         (sift_states_backward): Fix the memory leak.  Remove the handling
14116         OP_CONTEXT_NODE.
14117         (update_cur_sifted_state): Append some if clause to avoid redundant
14118         call.
14119         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
14120         back reference.
14121         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
14122         (check_subexp_limits): Likewise.
14123         (search_subexp): Likewise.
14124         (sift_states_bkref): Likewise.
14125         (transit_state_mb): Likewise.
14126         (transit_state_bkref_loop): Likewise.
14127         (transit_state_bkref_loop): Likewise.
14128         (group_nodes_into_DFAstates): Likewise.
14129         (check_node_accept): Likewise.
14130         (sift_ctx_init): Add initializing.
14131
14132 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
14133
14134         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
14135         __builtin_expect.
14136
14137 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14138
14139         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
14140         duplicated variable c.
14141
14142         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
14143         if possible.
14144
14145         * sysdeps/unix/sysv/linux/i386/sysdep.h
14146         (INTERNAL_SYSCALL_ERROR_P): New define.
14147         (INTERNAL_SYSCALL_ERRNO): Likewise.
14148
14149         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
14150         Add hack to prevent the compiler from clobbering the signal context.
14151
14152 2002-10-11  Roland McGrath  <roland@redhat.com>
14153
14154         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
14155         Fix typos.
14156
14157         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
14158         * sysdeps/sh/dl-lookupcfg.h: File removed.
14159         * sysdeps/i386/dl-lookupcfg.h: File removed.
14160
14161         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
14162         missing labels and ; from last change.
14163
14164         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
14165         number literals, so they are doubles instead of ints.
14166
14167 2002-10-09  Roland McGrath  <roland@redhat.com>
14168
14169         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
14170         changed from [USE_TLS && HAVE___THREAD].
14171
14172         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
14173         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
14174         * sysdeps/x86_64/dl-machine.h
14175         (elf_machine_type_class, elf_machine_rela): Likewise.
14176         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
14177         Likewise.
14178
14179         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
14180         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
14181         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
14182
14183         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
14184         instead of ___tls_get_addr.
14185         (___tls_get_addr_internal): Add attribute_hidden to decl.
14186
14187         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
14188         _dl_error_catch_tsd.
14189         * elf/rtld.c (startup_error_tsd): New function.
14190         (dl_main): Point _dl_error_catch_tsd at that.
14191         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
14192         use new function pointer instead.
14193         * elf/dl-tsd.c: New file.
14194         * elf/Makefile (routines): Add it.
14195
14196 2002-10-07  Roland McGrath  <roland@redhat.com>
14197
14198         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
14199         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
14200         take _dl_load_lock around calling __writev.
14201
14202         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
14203         (INLINE_SYSCALL): Use that.
14204
14205         * sysdeps/generic/dl-sysdep.h: New file.
14206         * sysdeps/mach/hurd/dl-sysdep.h: New file.
14207         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
14208         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
14209         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
14210         access it directly.
14211         * elf/dl-minimal.c (__errno_location): Removed.
14212         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14213         Use GOTOFF access for errno.
14214         * sysdeps/unix/sysv/linux/i386/sysdep.h
14215         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14216
14217         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
14218         Use PC-relative access for errno.
14219         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
14220         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
14221
14222         * include/tls.h: New file.
14223         (USE___THREAD): New macro.
14224         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
14225         libc or libpthread.
14226         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
14227         changed from [USE_TLS && HAVE___THREAD].
14228         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
14229         * sysdeps/unix/i386/sysdep.S: Likewise.
14230         * sysdeps/unix/x86_64/sysdep.S: Likewise.
14231         * include/errno.h: Likewise.
14232         * include/netdb.h: Likewise.
14233         * include/resolv.h: Likewise.
14234
14235         * sysdeps/generic/errno.c: New file.
14236         * csu/Makefile (aux): New variable, list errno.
14237         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
14238         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
14239         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
14240         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
14241         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
14242         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
14243         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
14244         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
14245         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
14246         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
14247         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
14248         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
14249         * sysdeps/unix/alpha/sysdep.S: Likewise.
14250         * sysdeps/generic/start.c: Likewise.
14251         * sysdeps/unix/start.c: Likewise.
14252         * sysdeps/unix/arm/start.c: Likewise.
14253         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
14254         * sysdeps/unix/sparc/start.c: Likewise.
14255         * sysdeps/unix/sysv/irix4/start.c: Likewise.
14256         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
14257
14258         * manual/search.texi (Tree Search Function, Hash Search Function):
14259         Mention search.h clearly.
14260
14261 2002-10-05  Roland McGrath  <roland@redhat.com>
14262
14263         * elf/dl-fxstat64.c: File removed.
14264         * elf/dl-xstat64.c: File removed.
14265         * elf/Makefile (rtld-routines): Remove them.
14266         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
14267         Instead, use strong_alias instead of versioned_symbol in the
14268         !SHLIB_COMPAT case.
14269         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
14270         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
14271
14272         * include/shlib-compat.h
14273         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
14274         [! NOT_IN_libc] (IS_IN_libc): Define it.
14275         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
14276         * elf/Makefile (CPPFLAGS-.os): Likewise.
14277
14278         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
14279         Return the status instead of calling exit.
14280
14281         * Makeconfig (CFLAGS): Prepend -std=gnu99.
14282         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
14283         Remove superfluous rm command, whose @ plus make bugs hid
14284         all these commands from the make output.
14285
14286         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
14287         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
14288         Use that file's contents instead of literal echo's for the prologue.
14289         * include/features.h: Include <gnu/stubs.h> unconditionally.
14290         * include/gnu/stubs.h: New file.
14291
14292 2002-09-30  Roland McGrath  <roland@redhat.com>
14293
14294         * elf/rtld-Rules: New file.
14295         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
14296         $(objpfx)rtld-libc.a): New targets.
14297         (generated): Add them.
14298         (reloc-link): Remove -o $@ from the variable.
14299         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
14300         (distribute): Add rtld-Rules.
14301         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
14302         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
14303         (common-mostlyclean, common-clean): Clean up rtld-* files.
14304         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
14305
14306 2003-05-20  Jakub Jelinek  <jakub@redhat.com>
14307
14308         * elf/dynamic-link.h (elf_get_dynamic_info): Add temp argument.
14309         If temp != NULL, copy dynamic entries which need relocation to temp
14310         array before relocating.
14311         (DL_RO_DYN_TEMP_CNT): Define.
14312         * elf/dl-load.c (_dl_map_object_from_fd): Adjust caller.
14313         * elf/rtld.c (_dl_start): Likewise.
14314         (dl_main): Likewise.  Add dyn_temp static variable.
14315
14316 2002-10-11  Roland McGrath  <roland@redhat.com>
14317
14318         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
14319         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
14320
14321         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
14322         proper set of no-op insn prefixes.
14323
14324         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
14325
14326 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
14327
14328         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
14329         __pthread_kill_other_threads_np.
14330
14331         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
14332
14333 2002-10-08  Roland McGrath  <roland@redhat.com>
14334
14335         * locale/newlocale.c (__newlocale): If setting all categories to "C",
14336         just return &_nl_C_locobj instead of copying it.
14337         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
14338         * locale/duplocale.c (__duplocale): Likewise.
14339
14340 2002-10-07  Roland McGrath  <roland@frob.com>
14341
14342         * config.h.in (HAVE_I386_SET_GDT): New #undef.
14343         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
14344         * sysdeps/mach/configure: Regenerated.
14345
14346 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
14347
14348         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
14349         Add all necessary register outputs for syscall-clobbered registers.
14350
14351 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
14352
14353         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
14354         Itanium 2 (and Itanium).
14355         Fix unwind directives and make it fit in 80 columns.
14356         * sysdeps/ia64/memset.S: Likewise.
14357         * sysdeps/ia64/memcpy.S: Likewise.
14358         Move jump table to .rodata section.
14359
14360 2002-10-03  Roland McGrath  <roland@frob.com>
14361
14362         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
14363         clobbers to asm.
14364
14365 2002-10-10  Andreas Jaeger  <aj@suse.de>
14366
14367         * sysdeps/x86_64/_mcount.S: Restore correct registers.
14368
14369 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
14370
14371         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
14372
14373 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
14374
14375         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
14376         _dl_allocate_tls_init.  Add rtld_hidden_proto.
14377         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
14378         rtld_hidden_def.
14379         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
14380
14381         * version.h (VERSION): Bump to 2.3.1.
14382
14383         * Make-dist: Add back one of the tar invocations removed before.
14384
14385         * stdlib/Makefile (distribute): Add allocalim.h.
14386
14387         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
14388         (__libc_tsd_address): Use correct variable name.
14389         Patch by Stefan Jones <stefan.jones@multigig.com>.
14390
14391         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
14392         Reported by edwardsg@sgi.com [PR libc/4678].
14393
14394         * Versions.def (libc): Add GLIBC_2.3.1.
14395         (libpthread): Add GLIBC_2.3.1.
14396
14397         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
14398         and __sigtimedwait.
14399         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
14400         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
14401         libc_hidden_def.
14402         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
14403         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
14404
14405         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
14406         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
14407         and make old name an alias.
14408         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
14409         and make old name an alias.
14410         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
14411         __libc_msgsnd.
14412
14413         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
14414         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
14415         __libc_writev.
14416         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
14417         old name an alias.
14418         * sysdeps/posix/readv.c: Likewise
14419         * sysdeps/unix/sysv/aix/readv.c: Likewise.
14420         * sysdeps/unix/sysv/linux/readv.c: Likewise.
14421         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
14422         old name an alias.
14423         * sysdeps/posix/writev.c: Likewise
14424         * sysdeps/unix/sysv/aix/writev.c: Likewise.
14425         * sysdeps/unix/sysv/linux/writev.c: Likewise.
14426
14427         * include/sys/wait.h: Declare __waitid.
14428         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
14429         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
14430         name an alias.
14431         * sysdeps/posix/waitid.c: Likewise.
14432         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
14433
14434         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
14435
14436 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
14437
14438         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
14439         prototypes.
14440         (__MAX_ALLOCA_CUTOFF): Define.
14441         Include allocalim.h.
14442         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
14443         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
14444         host_buffer depending on __libc_use_alloca.
14445         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
14446         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
14447         net_buffer depending on __libc_use_alloca.
14448         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
14449         buf depending on __libc_use_alloca.
14450         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
14451         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
14452         instead of hardcoded constants.
14453         Pass proper size argument to alloca and compute end for wide char
14454         version.
14455         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
14456         instead of hardcoded constants.
14457         * string/strcoll.c (strcoll): Likewise.
14458         * string/strxfrm.c (strxfrm): Likewise.
14459         * sysdeps/posix/readv.c (__readv): Likewise.
14460         * sysdeps/posix/writev.c (__writev): Likewise.
14461         * sysdeps/generic/allocalim.h: New file.
14462
14463 2002-10-08  Roland McGrath  <roland@redhat.com>
14464
14465         * configure.in (aux_missing warning): Change "too old" to
14466         "incompatible versions", since for autoconf it's "too new" right now.
14467         * configure: Regenerated.
14468
14469         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
14470         one found doesn't work on our configure.in.
14471         * configure: Regenerated.
14472         * config.make.in (AUTOCONF): New substituted variable.
14473         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
14474         (autoconf-it): ... here, use that instead of defining conditionally.
14475         Use $(AUTOCONF) instead of literal autoconf.
14476         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
14477         with this condition.
14478         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
14479
14480 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
14481
14482         * Make-dist (dist): Cleanup a bit.  We are not interested in the
14483         14 char filename limit anymore.  Remove intermediate files and
14484         symlinks.
14485
14486 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
14487
14488         * po/sk.po: Update from translation team.
14489         * po/tr.po: Likewise.
14490         * po/gl.po: Likewise.
14491
14492 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
14493
14494         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
14495
14496 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14497
14498         * version.h (RELEASE): Change to stable.
14499
14500 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
14501
14502         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
14503         __syscall_exit_group): New prototypes.
14504
14505 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
14506
14507         * glibc 2.3 released.
14508
14509
14510 See ChangeLog.13 for earlier changes.