Update.
[platform/upstream/glibc.git] / ChangeLog
1 2003-04-05  Roland McGrath  <roland@redhat.com>
2
3         * sysdeps/unix/sysv/linux/i386/setcontext.S: Rewrite to avoid writing
4         below the stack pointer even if switching to the same context we are
5         running right now.
6
7 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
8
9         * catgets/gencat.c (read_input_file): Make sure that \n is not
10         alone on the line before testing for continuation.
11
12         * math/test-tgmath.c (compile_test): Initialize c.
13
14 2003-04-05  Alexandre Oliva  <aoliva@redhat.com>
15
16         * sysdeps/unix/sysv/linux/mips/mips64/n32/ftruncate64.c: New.
17         * sysdeps/unix/sysv/linux/mips/mips64/n32/truncate64.c: New.
18         * sysdeps/unix/sysv/linux/kernel-features.h: fcntl64 is available
19         on mips n32.
20         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Explain why
21         XSTAT_IS_XSTAT64 must not be used for mips n64.  Use 64-bit data
22         structure on n32 as well.
23         * sysdeps/unix/sysv/linux/mips/bits/stat.h: Use POSIX-compliant
24         data types on n32 and n64.
25
26 2003-04-05  Ulrich Drepper  <drepper@redhat.com>
27
28         * libio/fileops.c (_IO_new_file_fopen): Don't free step data right
29         after getting them.
30
31         * malloc/thread-m.h [PTHREAD_MUTEX_INITIALIZER]: If
32         HAVE_register_atfork_malloc is defined use __register_atfork_malloc
33         instead of __register_atfork.
34
35 2003-04-05  Jakub Jelinek  <jakub@redhat.com>
36
37         * stdio-common/reg-printf.c (__register_printf_function): Calloc
38         instead of malloc __printf_arginfo_table and __printf_function_table.
39         Reported by John Reiser <jreiser@BitWagon.com>.
40
41 2003-04-04  Steven Munroe  <sjmunroe@us.ibm.com>
42
43         * sysdeps/powerpc/powerpc64/strchr.S: 64-bit optimizations.
44         * sysdeps/powerpc/powerpc64/strlen.S: 64-bit optimizations.
45
46         * sysdeps/powerpc/fpu/bits/mathdef.h (FLT_EVAL_METHOD): Undef before
47         defining.
48
49 2003-04-04  Alexandre Oliva  <aoliva@redhat.com>
50
51         * sysdeps/unix/sysv/linux/mips/bits/fcntl.h (struct flock): Adjust
52         for n64 abi.
53
54 2003-04-03  Roland McGrath  <roland@redhat.com>
55
56         * configure.in: Fix up use of compilation flags to match the build:
57         For .s files, $ASFLAGS;
58         For .S files, $CPPFLAGS $ASFLAGS;
59         For .c files, $CFLAGS $CPPFLAGS;
60         when linking, add $LDFLAGS.
61         * configure: Regenerated.
62
63 2003-04-03  Jakub Jelinek  <jakub@redhat.com>
64
65         * sysdeps/unix/sysv/linux/getsysstats.c (get_proc_path): Reverse test
66         for atomic_compare_and_exchange_bool_acq failure.
67
68 2003-04-03  Ulrich Drepper  <drepper@redhat.com>
69
70         * posix/unistd.h: Define _POSIX_VERSION, _POSIX2_VERSION,
71         _POSIX2_C_BIND, _POSIX2_C_DEV, _POSIX2_SW_DEV, and
72         _POSXI2_LOCALEDEF to 200112L.  Remove _POSIX2_C_VERSION.
73         Remove declaration of pthread_atfork.
74
75 2003-04-02  Ulrich Drepper  <drepper@redhat.com>
76
77         * locale/iso-639.def: Add many more languages from the current ISO 639.
78
79         * sysdeps/unix/sysv/linux/ipc_priv.h: Define IPCOP_semtimedop.
80         * sysdeps/generic/semtimedop.c: New file.
81         * sysdeps/unix/sysv/linux/i386/semtimedop.S: New file.
82         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Add semtimedop.
83         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
84         * sysvipc/Makefile (routines): Add semtimedop.
85         * sysvipc/Versions [GLIBC_2.3.3] (glibc): Add semtimedop.
86         * sysvipc/sys/sem.h: Declare semtimedop.
87
88 2003-04-02  Daniel Jacobowitz  <drow@mvista.com>
89
90         * configure.in: Check for __register_frame_info in both
91         -lgcc and -lgcc_eh.
92         * configure: Regenerated.
93
94 2003-04-01  Roland McGrath  <roland@redhat.com>
95
96         * scripts/abilist.awk: Allow dots in soname suffix.
97
98         * scripts/abilist.awk (emit): Fix bailout condition.
99
100 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
101
102         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c: Use the
103         IA-64 version.
104
105         * elf/tls-macros.h [__ia64__] (TLS_IE, TLS_LD, TLS_GD): Add gp
106         register as input to asm.
107
108 2003-04-01  Jakub Jelinek  <jakub@redhat.com>
109
110         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (sigevent_t): Fix a typo.
111
112 2003-04-01  Andreas Jaeger  <aj@suse.de>
113
114         * configure.in: Output as/ld as name if version is too old.
115
116 2003-03-31  Daniel Jacobowitz  <drow@mvista.com>
117
118         * configure.in: Don't require an installed C library in the test
119         for ".set" assembler support.
120
121 2003-03-31  Roland McGrath  <roland@redhat.com>
122
123         * signal/tst-sigset.c: New file.
124         * signal/Makefile (tests): Add it.
125
126 2003-03-31  Ulrich Drepper  <drepper@redhat.com>
127
128         * sysdeps/unix/sysv/linux/alpha/bits/signum.h (_NSIG): Define to 65.
129         * sysdeps/unix/sysv/linux/hppa/bits/signum.h (_NSIG): Likewise.
130         * sysdeps/unix/sysv/linux/sparc/bits/signum.h (_NSIG): Likewise.
131         * sysdeps/unix/sysv/linux/bits/signum.h (_NSIG): Likewise.
132         (__SIGRTMAX): Adjust accordingly.
133         * sysdeps/gnu/siglist.c: If OLD2_SIGLIST_SIZE is defined define
134         second compatibility symbol set.
135         * sysdeps/unix/sysv/linux/siglist.h (OLD2_SIGLIST_SIZE): Define.
136
137 2003-03-31  Andreas Schwab  <schwab@suse.de>
138
139         * sysdeps/m68k/m68020/bits/atomic.h (atomic_increment_and_test):
140         Define.
141         (atomic_decrement_and_test): Fix test.
142
143 2003-03-31  Jakub Jelinek  <jakub@redhat.com>
144
145         * sysdeps/sparc/sparc32/bits/atomic.h: New file.
146         * sysdeps/sparc/sparc32/sparcv9/bits/atomic.h: New file.
147         * sysdeps/sparc/sparc64/bits/atomic.h: New file.
148         * sysdeps/sparc/sparc32/atomicity.h: Removed.
149         * sysdeps/sparc/sparc32/sparcv9/atomicity.h: Removed.
150         * sysdeps/sparc/sparc64/atomicity.h: Removed.
151
152 2003-03-30  Roland McGrath  <roland@redhat.com>
153
154         * scripts/abilist.awk: Grok .opd foo plus .text .foo as "foo F" alone.
155
156         * intl/po2test.sed: Anchor substitution regexps to fix last change.
157
158 2003-03-29  Paolo Bonzini  <bonzini@gnu.org>
159
160         * intl/po2test.sed: Unify the transformations for msgid and msgstr
161         and remove a useless s/// command.
162
163 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
164
165         * sysdeps/ia64/dl-machine.h (RTLD_START): Wrap ".save rp, r0"
166         directive into empty .prologue region to ensure that call-chain
167         is terminated even for the first instruction.
168
169         * sysdeps/ia64/elf/start.S (_start): Use ".save rp, r0" idiom
170         to terminate call-chain right from the get-go.
171
172         * sysdeps/unix/sysv/linux/ia64/fork.S (fork): Remove unnecessary
173         stop bit between compare & branch.
174
175 2003-03-29  Ulrich Drepper  <drepper@redhat.com>
176
177         * stdlib/strtod.c (INTERNAL): Recognize first digit after decimal
178         point correctly [PR libc/4993].
179
180         * sysdeps/unix/sysv/linux/ifaddrs.c (getifaddrs): Avoid
181         netlink_open calls if netlink is known to not be available.
182
183 2003-03-29  Alexandre Oliva  <aoliva@redhat.com>
184
185         * configure.in: Add mips64* support.
186         * sysdeps/mips/bits/endian.h: Make it bi-endian.
187         * sysdeps/mips/mipsel/bits/endian.h: Removed.
188         * sysdeps/mips/mips64/n32/el/bits/endian.h: Removed.
189         * sysdeps/mips/mips64/n64/el/bits/endian.h: Removed.
190         * sysdeps/mips/mips32/Makefile (CC): Add -mabi=32.
191         * sysdeps/mips/mips64/n32/Makefile (CC): Add -mabi=n32.
192         * sysdeps/mips/mips64/n64/Makefile (CC): Add -mabi=64.
193         * sysdeps/mips/Implies: Moved wordsize-32 to...
194         * sysdeps/mips/mips32/Implies: New file.
195         * sysdeps/unix/mips/sysdep.h (PSEUDO_NOERRNO, PSEUDO_END_NOERRNO,
196         ret_NOERRNO): New.
197         (ret, PSEUDO_END): Moved past END.
198         (PSEUDO): Moved to...
199         * sysdeps/unix/mips/mips32/sysdep.h: New file.
200         * sysdeps/unix/mips/mips64/n32/sysdep.h: Removed #undef PSEUDO.
201         * sysdeps/unix/mips/mips64/n64/sysdep.h: Likewise.
202         * sysdeps/unix/sysv/linux/mips/sysdep.h: Move to...
203         * sysdeps/unix/sysv/linux/mips/mips32/sysdep.h: New file.
204         * sysdeps/unix/sysv/linux/mips/mips32/kern64/sysdep.h: New file.
205
206         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start):
207         Re-introduce ENTRY.
208
209 2003-03-28  Thorsten Kukuk  <kukuk@suse.de>
210
211         * sysdeps/unix/sysv/linux/ifaddrs.c: New file.
212         * inet/test-ifaddrs.c: Allow AF_PACKET.
213         * sysdeps/unix/sysv/linux/kernel-features.h: Add
214         __ASSUME_NETLINK_SUPPORT.
215
216 2003-03-28  Ulrich Drepper  <drepper@redhat.com>
217
218         * elf/vismain.c (do_test): Comment out tests which fail in the moment.
219
220 2003-03-26  H.J. Lu  <hjl@gnu.org>
221
222         * elf/vismod.h (getvarlocal1): Return const char **.
223         (getvarinmod1): Likewise.
224         (getvaritcpt1): Likewise.
225         (getvarlocal2): Likewise.
226         (getvarinmod2): Likewise.
227         (getvaritcpt2): Likewise.
228         (getvaritcpt3): Likewise.
229         * elf/vismain.c (do_test): Adjusted.
230         * elf/vismod1.c (getvarlocal1): Return address.
231         (getvarinmod1): Likewise.
232         (getvaritcpt1): Likewise.
233         * elf/vismod2.c (getvarlocal2): Likewise.
234         (getvarinmod2): Likewise.
235         (getvaritcpt2): Likewise.
236         * elf/vismod3.c (getvaritcpt3): Likewise.
237
238 2003-03-28  Roland McGrath  <roland@redhat.com>
239
240         * elf/vismain.c (do_test): Print both addresses when they don't match.
241
242         * scripts/abilist.awk: If given -v filename_regexp and/or -v
243         libname_regexp when parsing names, then produce output only
244         for those matching the given regexps.  In combine mode, save all
245         stanzas for a final sorting by stanza header at the end.
246         Emit a blank line between stanzas.
247
248         * scripts/abilist.awk: When given -v combine=1, do parse_names and
249         emit a single output stream with lib name in stanza header lines.
250
251         * scripts/abilist.awk: Emit A for all *ABS* regardless of type.
252
253 2003-03-27  Roland McGrath  <roland@redhat.com>
254
255         * sysdeps/powerpc/bits/atomic.h [! __powerpc64__]
256         (__arch_atomic_decrement_if_positive_64): Fix bogus definition.
257
258 2003-03-28  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
259
260         * sysdeps/sh/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
261         Return old value. Make asm output reg constraint earlyclobber.
262         Renamed from...
263         (__arch_compare_and_exchange_8_acq): ... this.
264         (__arch_compare_and_exchange_val_16_acq):
265         Return old value. Make asm output reg constraint earlyclobber.
266         Renamed from...
267         (__arch_compare_and_exchange_16_acq): ... this.
268         (__arch_compare_and_exchange_val_32_acq):
269         Return old value. Make asm output reg constraint earlyclobber.
270         Renamed from...
271         (__arch_compare_and_exchange_32_acq): ... this.
272         (__arch_compare_and_exchange_val_64_acq):
273         Renamed from...
274         (__arch_compare_and_exchange_64_acq): ... this.
275         (atomic_exchange_and_add): Use local variables and
276         __arch_compare_and_exchange_val_64_acq.
277         (atomic_add): Likewise.
278         (atomic_add_negative, atomic_add_zero): Use local variables.
279
280 2003-03-28  Alexandre Oliva  <aoliva@redhat.com>
281
282         * sysdeps/unix/mips/sysdep.S: Include sys/asm.h.
283
284 2003-03-27  Ulrich Drepper  <drepper@redhat.com>
285
286         * Makefile: Remove libmd5crypt goal.
287
288 2003-03-25  Jakub Jelinek  <jakub@redhat.com>
289
290         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Restore
291         special handling of relocations against local symbols.
292
293 2003-03-27  Steven Munroe  <sjmunroe@us.ibm.com>
294
295         * sysdeps/powerpc/bits/atomic.h
296         (__arch_compare_and_exchange_bool_32_acq): Move to [!__powerpc64__].
297         [__powerpc64__] (__arch_compare_and_exchange_bool_32_acq):
298         Define PPC64 specific version.
299         [__powerpc64__] (__arch_compare_and_exchange_bool_64_acq):
300         Change (mem) constraint to "b".
301         [__powerpc64__] (__arch_atomic_exchange_and add_64):
302         Replace addi with add. Change (value) contraint to "r".
303         Change (mem) constraint to "b".
304         [__powerpc64__] (__arch_atomic_decrement_if_positive_64): New macro.
305         (__arch_atomic_exchange_32): Change (mem) constraint to "b".
306         (__arch_atomic_exchange_and_add_32): Change (mem) constraint to "b".
307         (__arch_atomic_decrement_if_positive_32): New macro.
308         (atomic_decrement_if_positive): Use __arch* macros.
309
310 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
311
312         * sysdeps/ia64/fpu/libm-test-ulps: Update.
313
314 2003-03-27  Roland McGrath  <roland@redhat.com>
315
316         * scripts/rpm2dynsym.sh: New file.
317         * Makefile (distribute): Add it.
318
319 2003-03-27  David Mosberger  <davidm@hpl.hp.com>
320
321         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Restore caller's
322         ar.unat before returning.  Add missing .mem.offset directives
323         to ensure file gets assembled without warnings.
324         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
325
326 2003-03-27  Jakub Jelinek  <jakub@redhat.com>
327
328         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf) <_SC_MONOTONIC_CLOCK>:
329         Return -1 instead of 0 if clock_getres failed.
330
331 2003-03-27  Roland McGrath  <roland@redhat.com>
332
333         * scripts/abilist.awk: If variable `parse_names' is set, grok the file
334         header lines and write out foo.symlist files for each foo.so.NN listed.
335
336         * libio/libioP.h (_IO_wfile_jumps): Remove attribute_hidden.
337         This symbol is exported, and we don't want to hide it.
338         Add libc_hidden_proto instead.
339         (_IO_file_jumps): Add libc_hidden_proto.
340         * libio/wfileops.c (_IO_wfile_jumps): Add libc_hidden_data_def.
341         Remove INTVARDEF.
342         * libio/fileops.c (_IO_file_jumps): Likewise.
343         * libio/stdfiles.c: Don't use INTUSE on them.
344         * libio/iofdopen.c (_IO_new_fdopen): Likewise.
345         * libio/iofopen.c (__fopen_internal): Likewise.
346         * libio/freopen.c (freopen): Likewise.
347         * libio/freopen64.c (freopen64): Likewise.
348         * libio/iovdprintf.c (_IO_vdprintf): Likewise.
349
350         * Makerules (check-abi) [$(enable-check-abi) = warn]:
351         Ignore exit status from diff.
352         * configure.in (enable_check_abi): Document possible value "warn".
353         Change default to no for now.
354         * configure: Regenerated.
355
356         * sysdeps/unix/Makefile ($(objpfx)stub-syscalls.c): Emit stub_warning
357         macro calls and a #include <stub-tag.h> at the end.
358         * Makerules ($(objpfx)stubs): Tweak sed commands.
359
360         * sysdeps/unix/sysv/linux/syscalls.list: Use - rather than EXTRA in
361         caller column for *xattr syscalls, since they are in sysdeps/generic.
362
363         * sysdeps/unix/sysv/linux/i386/setfsuid.c: setfsgid -> setfsuid
364         * sysdeps/unix/sysv/linux/i386/setfsgid.c: setfsuid -> setfsgid
365
366 2003-03-26  Roland McGrath  <roland@redhat.com>
367
368         * Makerules (check-abi-config): Use /thread instead of /tls when
369         use-thread and not just use-tls is set.
370
371         * Makerules (update-abi): Put quotes around $(update-abi-config).
372
373         * elf/Makefile (check-abi): Depend on check-abi-ld.
374         (update-abi): Depend on update-abi-ld.
375
376 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
377
378         * sysdeps/unix/sysv/linux/i386/setfsuid.c: Use INTERNAL_SYSCALL and
379         do not check for errors (unless testing for 32bit variant).
380         * sysdeps/unix/sysv/linux/i386/setfsgid.c: Likewise.
381
382 2003-03-27  Philip Blundell  <philb@gnu.org>
383
384         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO_RET_NOERRNO): Use
385         unconditional mov.  Remove nop.
386
387         * sysdeps/unix/sysv/linux/kernel-features.h
388         (__ASSUME_VFORK_SYSCALL): Define for kernel 2.4 on arm.
389         * sysdeps/unix/sysv/linux/arm/vfork.S: Elide compatibility code
390         when __ASSUME_VFORK_SYSCALL is defined.
391         * sysdeps/unix/sysv/linux/arm/mmap64.S: Likewise for
392         __ASSUME_MMAP2_SYSCALL.
393         * sysdeps/unix/sysv/linux/arm/sigaction.c: Likewise for
394         __ASSUME_REALTIME_SIGNALS.
395
396 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
397
398         * sysdeps/generic/ldsodefs.h (ELF_RTYPE_CLASS_COPY): Define to 2
399         only if DL_NO_COPY_RELOCS is not defined.
400         * sysdeps/ia64/dl-lookupcfg.h: Define DL_NO_COPY_RELOCS.
401
402 2003-03-26  Roland McGrath  <roland@redhat.com>
403
404         * sysdeps/unix/make-syscalls.sh: When an undefined syscall has
405         SOURCE=-, append its symbol names to make variable unix-stub-syscalls.
406         * sysdeps/unix/Makefile [$(subdir) = misc] [unix-stub-syscalls]
407         (sysdep_routines): Add stub-syscalls.
408         ($(objpfx)stub-syscalls.c): New target.
409         (generated): Add stub-syscalls.c.
410
411         * tls.make.c: Also define use-tls according to USE_TLS macro.
412
413 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
414
415         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h (struct siginfo): Avoid
416         no-op padding element.
417         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
418         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
419         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
420         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
421
422 2003-03-26  GOTO Masanori  <gotom@debian.or.jp>
423
424         * sysdeps/unix/sysv/linux/i386/getgroups.c: Fix the error
425         condition check for the return value of getgroups32.
426
427 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
428
429         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (PSEUDO_NOERRNO):
430         Fix a typo.
431         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (PSEUDO_NOERRNO,
432         PSEUDO_END_NOERRNO): Define.
433         * sysdeps/unix/sysdep.h (PSEUDO_END_NOERRNO): Fix a typo.
434         Define to PSEUDO_END.
435
436 2003-03-26  Ulrich Drepper  <drepper@redhat.com>
437
438         * abilist/librt.abilist: Add new timer interfaces for 64-bit archs.
439
440 2003-03-25  Jiro SEKIBA  <jir@yamato.ibm.com>
441
442         * iconvdata/euc-tw.c (from_euc_tw): Fix return value of TO_LOOP.
443         * iconvdata/bug-iconv4.c: New file.
444         * iconvdata/Makefile (tests): Add bug-iconv4.
445
446 2003-03-25  H.J. Lu  <hjl@gnu.org>
447
448         * elf/dl-lookup.c (_dl_lookup_symbol): Avoid looking up protected
449         symbols twice.
450         (_dl_lookup_versioned_symbol): Likewise.
451
452 2003-03-26  Jakub Jelinek  <jakub@redhat.com>
453
454         * csu/tst-atomic.c (do_test): Add some new
455         atomic_compare_and_exchange_val_acq, atomic_add_zero,
456         atomic_compare_and_exchange_bool_acq and atomic_add_negative tests.
457         * include/atomic.h (atomic_add_negative, atomic_add_zero):
458         Prefix local variable so that it doesn't clash with the one
459         in atomic_exchange_and_add.
460         * sysdeps/ia64/bits/atomic.h (atomic_exchange): Fix for long/void *
461         pointers.
462         (atomic_exchange_and_add): Implement using __sync_fetch_and_add_?i.
463         * sysdeps/powerpc/bits/atomic.h (atomic_exchange_and_add): Force
464         value into register.
465         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_64_acq):
466         Cast newval to long.
467         * sysdeps/x86_64/bits/atomic.h
468         (__arch_compare_and_exchange_val_64_acq): Cast newval and oldval to
469         long.
470         (atomic_exchange): Cast newvalue to long if sizeof == 8.
471         (atomic_exchange_and_add): Cast value to long if sizeof == 8.
472         (atomic_add, atomic_add_negative, atomic_add_zero): Likewise.
473         (atomic_bit_set): Shift 1L up in all cases to shut up warnings.
474
475 2003-03-21  Martin Schwidefsky  <schwidefskyde.ibm.com>
476
477         * sysdeps/s390/s390-32/backtrace.c (__backtrace): Remove high order
478         bit from backtrace addresses.
479
480 2003-03-21  Andreas Schwab  <schwab@suse.de>
481
482         * sysdeps/unix/sysv/linux/i386/chown.c: Don't define any versioned
483         __chown symbols.
484
485 2003-03-25  Roland McGrath  <roland@redhat.com>
486
487         * config.make.in (enable-check-abi): New variable from configure.
488         * configure.in (enable_check_abi): New substituted variable,
489         controlled by --{enable,disable}-check-abi (default yes).
490         * configure: Regenerated.
491         * Makerules [$(enable-check-abi) = yes] (tests): Put this condition
492         on check-abi dependency.
493
494 2003-03-26  Andreas Schwab  <schwab@suse.de>
495
496         * sysdeps/m68k/m68020/bits/atomic.h: Fix typos.
497         * include/atomic.h: Likewise.
498
499         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Define ret_NOERRNO.
500
501 2003-03-25  Roland McGrath  <roland@redhat.com>
502
503         * sysdeps/powerpc/bits/atomic.h (__arch_atomic_exchange_32): New macro.
504         (__arch_atomic_exchange_64): New macro.
505         (atomic_exchange): Use them.
506         (__arch_atomic_exchange_and_add_32): New macro.
507         (__arch_atomic_exchange_and_add_64): New macro.
508         (atomic_exchange_and_add): Use them.
509         Original patch from Steven Munroe <sjmunroe@us.ibm.com>.
510
511 2003-03-25  Alexandre Oliva  <aoliva@redhat.com>
512
513         * sysdeps/mips/sgidefs.h (_MIPS_ISA_MIPS32, _MIPS_ISA_MIPS64):
514         Define.
515         * sysdeps/mips/sys/asm.h: Test _MIPS_ISA against them on all
516         ISA tests.
517         (ALSZ, ALMASK, SZREG, REG_S, REG_L): Define based on ABI, not ISA.
518         (PTR_ADD, etc): Test _MIPS_SZPTR instead of _MIPS_SZLONG.
519         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
520         to decide whether to add padding.
521         * sysdeps/unix/sysv/linux/mips/bits/sigaction.h: Use _MIPS_SZPTR
522         to decide whether to add padding.
523         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h (struct
524         old_kernel_sigaction): Likewise.
525
526 2003-03-25  Ulrich Drepper  <drepper@redhat.com>
527
528         * csu/tst-atomic.c: Adjust tests to what atomic_add_negative and
529         atomic_add_zero were supposed to do.
530         * include/atomic.h: Adjust atomic_add_negative and atomic_add_zero
531         to x86 behavior.
532
533         * sysdeps/generic/bits/typesizes.h (__TIMER_T_TYPE): Define as void*.
534         This matches the new timer implementation.
535         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h (__TIMER_T_TYPE):
536         Likewise.
537         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h (__TIMER_T_TYPE):
538         Likewise.
539         * sysdeps/unix/sysv/linux/bits/siginfo.h (struct siginfo): Adjust
540         timer info for what the kernel provides these days.
541         (struct sigevent): Add _tid field.
542         Define SIGEV_THREAD_ID.
543         Remove struct __pthread_attr_s forward declaration.
544         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: Likewise.
545         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
546         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
547         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
548
549         * Versions.def (librt): Add GLIBC_2.3.3.
550
551         * abilist/libpthread.abilist: Update for nptl.
552
553 2003-03-24  Jon Grimm  <jgrimm@us.ibm.com>
554
555         * inet/netinet/in.h: Add IPPROTO_SCTP.
556
557 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
558
559         * sysdeps/unix/sysv/linux/sys/epoll.h (EPOLLET): Define.
560
561 2003-03-24  Philip Blundell  <philb@gnu.org>
562
563         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL):
564         Remove a1 from clobber list.
565
566 2003-03-24  Ulrich Drepper  <drepper@redhat.com>
567
568         * timezone/antarctica: Update from tzdata2003a.
569         * timezone/asia: Likewise.
570         * timezone/australasia: Likewise.
571         * timezone/europe: Likewise.
572         * timezone/iso3166.tab: Likewise.
573         * timezone/northamerica: Likewise.
574         * timezone/southamerica: Likewise.
575         * timezone/zone.tab: Likewise.
576
577 2003-03-24  Steven Munroe  <sjmunroe@us.ibm.com>
578
579         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_END_NOERRNO): Fix typo.
580
581 2003-03-23  Ulrich Drepper  <drepper@redhat.com>
582
583         * sysdeps/unix/sysv/linux/ia64/sysdep.h (ret_NOERRNO): Avoid
584         unwanted expansion by definining to ret.  Patch by Ian Wienand.
585
586         * sysdeps/unix/make-syscalls.sh: Recognize 'E' in first position of
587         the parameter description to denote no error checking.  Generate
588         appropriate pseudo asm code.
589         * sysdeps/unix/syscalls.list: Mark getgid, getpid, getuid with 'E'.
590         * sysdeps/unix/sysv/linux/syscalls.list: Mark getegid, geteuid,
591         getpgrp, and getppid with 'E'.
592         * sysdeps/powerpc/powerpc32/sysdep.h: Define PSEUDO_NOERRNO,
593         PSEUDO_END_NOERRNO, and ret_NOERRNO.
594         * sysdeps/powerpc/powerpc64/sysdep.h: Likewise.
595         * sysdeps/unix/sysdep.h: Likewise.
596         * sysdeps/unix/alpha/sysdep.h: Likewise.
597         * sysdeps/unix/sparc/sysdep.h: Likewise.
598         * sysdeps/unix/sysv/linux/arm/sysdep.h: Likewise.
599         * sysdeps/unix/sysv/linux/cris/sysdep.h: Likewise.
600         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Likewise.
601         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
602         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Likewise.
603         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
604         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
605         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
606         * sysdeps/unix/sysv/linux/sh/sysdep.h: Likewise.
607         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
608         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
609
610 2003-03-23  Roland McGrath  <roland@redhat.com>
611
612         * Makeconfig (+includes): Don't use $(last-includes).
613
614 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
615
616         * sysdeps/unix/sysv/linux/configure.in: Update mips64 patterns.
617         * sysdeps/unix/sysv/linux/configure: Rebuilt.
618
619 2003-03-23  Jakub Jelinek  <jakub@redhat.com>
620
621         * sysdeps/alpha/fpu/libm-test-ulps: Update.
622         * sysdeps/arm/libm-test-ulps: Update.
623         * sysdeps/hppa/fpu/libm-test-ulps: Update.
624         * sysdeps/ia64/fpu/libm-test-ulps: Update.
625         * sysdeps/mips/fpu/libm-test-ulps: Update.
626         * sysdeps/powerpc/nofpu/libm-test-ulps: Update.
627         * sysdeps/powerpc/fpu/libm-test-ulps: Update.
628         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Update.
629         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Update.
630         * sysdeps/sh/sh4/fpu/libm-test-ulps: Update.
631         * sysdeps/s390/fpu/libm-test-ulps: Update.
632         * sysdeps/x86_64/fpu/libm-test-ulps: Update.
633
634 2003-03-22  Roland McGrath  <roland@redhat.com>
635
636         * include/atomic.h: Put parens around all macro arguments.
637         (__atomic_val_bysize, __atomic_bool_bysize): New macros.
638         (atomic_compare_and_exchange_val_acq): Use it.
639         (atomic_compare_and_exchange_bool_acq): Likewise.
640         (atomic_increment_and_test): Invert sense of test.
641         (atomic_decrement_and_test): Likewise.
642         * csu/tst-atomic.c: Update those tests to match.
643
644 2003-03-22  Jakub Jelinek  <jakub@redhat.com>
645
646         * include/atomic.h (atomic_compare_and_exchange_val_acq): Add comment.
647         Don't define if __arch_compare_and_exchange_val_32_acq is not defined.
648         (atomic_compare_and_exchange_bool_acq): Add comment.  Don't use
649         __oldval variable in the macro, since it might be macro argument.
650         (atomic_decrement_if_positive): Initialize __memp, remove setting
651         of non-existent variable.
652         (atomic_bit_test_set): Cast 1 to __typeof (*mem) before shifting.
653         * sysdeps/ia64/bits/atomic.h (atomic_exchange_and_add): Implement
654         using atomic_compare_and_exchange_val_acq.
655         (atomic_decrement_if_positive, atomic_bit_test_set): Define.
656         * sysdeps/s390/bits/atomic.h (__arch_compare_and_exchange_val_8_acq):
657         Renamed from...
658         (__arch_compare_and_exchange_bool_8_acq): ... this.
659         (__arch_compare_and_exchange_val_16_acq): Renamed from...
660         (__arch_compare_and_exchange_bool_16_acq): ... this.
661         (__arch_compare_and_exchange_val_32_acq): Return old value.  Renamed
662         from...
663         (__arch_compare_and_exchange_bool_32_acq): ... this.
664         (__arch_compare_and_exchange_val_64_acq): Return old value.  Renamed
665         from...
666         (__arch_compare_and_exchange_bool_64_acq): ... this.
667         (__arch_compare_and_exchange_val_32_acq): Use __typeof for local
668         variables types instead of assuming int.
669         Change prefix of local variables to __arch.
670         * sysdeps/generic/bits/atomic.h (arch_compare_and_exchange_acq):
671         Remove.
672         (atomic_compare_and_exchange_val_acq,
673         atomic_compare_and_exchange_bool_acq): Define.
674
675         * csu/tst-atomic.c: New test.
676         * csu/tst-atomic-long.c: New test.
677         * csu/Makefile (tests): Add tst-atomic and tst-atomic-long.
678
679         * malloc/memusagestat.c (main): Kill warning if uint64_t is ulong.
680
681         * sysdeps/s390/Versions: Add trailing newline.
682
683         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Kill warning
684         if INTERNAL_SYSCALL_ERROR_P doesn't use its first argument.
685
686 2003-03-22  Andreas Schwab  <schwab@suse.de>
687
688         * sysdeps/m68k/fpu/libm-test-ulps: Update.
689
690         * sysdeps/m68k/m68020/bits/atomic.h: New file.
691         * sysdeps/m68k/m68020/atomicity.h: Removed.
692
693 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
694
695         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
696         data structures and macros.  Protect from multiple inclusion.
697
698         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
699         typo in #if test.
700
701 2003-03-21  Andreas Jaeger  <aj@suse.de>
702
703         * sysdeps/i386/fpu/libm-test-ulps: Update.
704
705         * math/libm-test.inc (tgamma_test): Recompute some constants with
706         36 digits precision.
707         (lgamma_test): Likewise.
708         (ccos_test): Likewise.
709         (ccosh_test): Likewise.
710         (clog10_test): Likewise.
711         (csin_test): Likewise.
712         (csinh_test): Likewise.
713         (ctan_test): Likewise.
714         (ctanh_test): Likewise.
715
716 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
717
718         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
719
720 2003-03-21  Roland McGrath  <roland@redhat.com>
721
722         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
723         constraint to permit non-constant BIT argument.
724         (atomic_bit_test_set): Likewise.
725         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
726         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
727         For quadword case, use "i" constraint if __builtin_constant_p and < 32
728         or "r" constraint otherwise.
729
730         * configure.in: Move AC_PROG_CC and other program-finding before all
731         the version checks.
732         * configure: Regenerated.
733
734 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
735
736         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
737         unaligned copying of 8-15 bytes.  From Chris Demetriou
738         <cgd@broadcom.com>.  Fix label names.
739         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
740         change as to memcpy.S.
741         * sysdeps/mips/memcpy.S: Formatting changes.
742         * sysdeps/mips/memset.S: Likewise.
743
744 2003-03-21  Roland McGrath  <roland@redhat.com>
745
746         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
747
748 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
749
750         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
751         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
752
753 2003-03-21  Roland McGrath  <roland@redhat.com>
754
755         * sysdeps/i386/i486/bits/atomic.h
756         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
757         version of the macro to avoid compile-time warnings.
758         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
759         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
760         (atomic_increment, atomic_decrement): Likewise.
761
762 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
763
764         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
765         * sysdeps/i386/i486/bits/atomic.h: Likewise.
766
767 2003-03-21  Roland McGrath  <roland@redhat.com>
768
769         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
770
771 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
772
773         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
774         atomic_compare_and_exchange_val_rel,
775         atomic_compare_and_exchange_bool_acq, and
776         atomic_compare_and_exchange_bool_rel instead of
777         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
778         * sysdeps/i386/i486/bits/atomic.h: Define
779         __arch_compare_and_exchange_val_*_acq instead of
780         __arch_compare_and_exchange_*_acq.
781         * sysdeps/x86_64/bits/atomic.h: Likewise.
782         * sysdeps/ia64/bits/atomic.h: Define
783         __arch_compare_and_exchange_bool_*_acq instead of
784         __arch_compare_and_exchange_*_acq.
785         * sysdeps/powerpc/bits/atomic.h: Likewise.
786         * sysdeps/s390/bits/atomic.h: Likewise.
787         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
788         * malloc/set-freeres.c: Likewise.
789         * nscd/cache.c: Likewise.
790         * stdlib/cxa_finalize.c: Likewise.
791         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
792
793 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
794
795         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
796         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
797         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
798
799         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
800         into high and low halves on n64.
801         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
802         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
803         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
804
805 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
806
807         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
808         correct atomic_compare_and_exchange_acq semantics.
809
810 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
811
812         * sysdeps/mips/ieee754.h: Remove excess #endif.
813
814 2003-03-20  Roland McGrath  <roland@redhat.com>
815
816         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
817         variable.  Remove superfluous memory clobber.
818
819         * include/atomic.h: Syntax braino fix.
820
821         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
822         in decimal.  Don't bail if niced at start.  Just check that nice call
823         bumps the total at all.
824
825 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
826
827         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
828         including pc, gp, sp and fp, as long long.
829         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
830         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
831         Add gp argument, and set gp in the jmpbuf to it.
832         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
833
834 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
835
836         * include/atomic.h: Define atomic_exchange and
837         atomic_decrement_if_positive if not already defined.  Add some
838         __builtin_expect.
839         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
840         * sysdeps/x86_64/bits/atomic.h: Likewise.
841         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
842         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
843         atomic_exchange, atomic_exchange_and_add, and
844         atomic_decrement_if_positive
845
846 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
847
848         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
849         with a single instruction.
850
851         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
852         properly for n64.
853         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
854         type.
855         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
856         Word before comparing with gotsym.  Take reloc_addr argument as
857         void*.  Remove the code added for the compiler to drop any
858         alignment assumptions.
859
860 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
861
862         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
863         * include/atomic.h: New file.
864         * sysdeps/i386/i486/bits/atomic.h: New file.
865         * sysdeps/x86_64/bits/atomic.h: New file.
866         * sysdeps/s390/bits/atomic.h: New file.
867         * sysdeps/sh/bits/atomic.h: New file.
868         * sysdeps/ia64/bits/atomic.h: New file.
869         * sysdeps/powerpc/bits/atomic.h: New file.
870         * sysdeps/generic/bits/atomic.h: New file.
871         * sysdeps/i386/i486/atomicity.h: Removed.
872         * sysdeps/x86_64/atomicity.h: Removed.
873         * sysdeps/s390/s390-32/atomicity.h: Removed.
874         * sysdeps/s390/s390-64/atomicity.h: Removed.
875         * sysdeps/ia64/atomicity.h: Removed.
876         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
877         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
878         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
879         use of macros from atomicity.h to new names and semantics.
880         * gmon_mcount.c: Likewise.
881         * malloc/set-freeres.c: Likewise.
882         * nscd/cache.c: Likewise.
883         * stdlib/cxa_finalize.c: Likewise.
884         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
885
886 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
887
888         * sysdeps/mips/ieee754.h: New file, suitable to replace both
889         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
890         mips-specific for now.
891
892 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
893
894         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
895         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
896         * stdlib/tst-strtod.c: Add test for the bug.
897
898         * posix/tst-nice.c (do_test): Remove invalid of return value.
899         Don't run test if initial level != 0.
900
901 2003-03-19  Amos Waterland  <apw@us.ibm.com>
902
903         * posix/tst-nice.c: New file.
904         * posix/Makefile (tests): Add tst-nice.
905
906 2003-03-18  Roland McGrath  <roland@redhat.com>
907
908         * abilist: New directory of libfoo.abilist files maintained using
909         scripts/merge-abilist.awk and "make update-abi" rules.
910         * Makefile (distribute): Add abilist/*.abilist.
911         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
912         Depend on check-abi.
913
914         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
915         * configure: Regenerated.
916
917         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
918
919 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
920
921         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
922         correctly.
923
924 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
925
926         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
927
928 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
929
930         * Versions.def: Add GLIBC_2.3.3 for libpthread.
931
932 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
933
934         * sysdeps/generic/libc-start.c [!SHARED &&
935         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
936
937 2003-03-17  Roland McGrath  <roland@redhat.com>
938
939         * include/ctype.h: Revert last change.
940
941 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
942
943         * argp/tst-argp1.c: Use test-skeleton.c.
944         * locale/tst-C-locale.c: Likewise.
945
946 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
947
948         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
949         * sysdeps/mips/mips64/n64/Implies: New file.
950         * sysdeps/mips/mips64/n64/Makefile: New file.
951         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
952         * sysdeps/mips/mips64/n32/Implies: New file.
953         * sysdeps/mips/mips64/n32/Makefile: New file.
954         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
955         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
956         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
957         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
958         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
959         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
960         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
961         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
962         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
963         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
964         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
965         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
966         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
967         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
968
969         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
970         lib64 for mips64/n64 and lib32 for mips64/n32.
971         (ldd_rewrite_script): Needed for all mips64 configurations.
972         * sysdeps/unix/sysv/linux/configure: Rebuilt.
973         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
974         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
975
976         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
977         well.
978
979         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
980         asm/unistd.h into asm-unistd.h.
981         * sysdeps/unix/sysv/linux/mips/configure: Generated.
982         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
983         of syscall list.
984         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
985         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
986         asm/unistd.h.
987
988         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
989         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
990         long type for registers on n32.
991
992         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
993         3 ABIs.
994         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
995         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
996         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
997         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
998         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
999         * sysdeps/unix/mips/brk.S: Likewise.
1000         * sysdeps/unix/mips/sysdep.S: Likewise.
1001         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
1002         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
1003         * sysdeps/mips/sys/ucontext.h: Likewise.
1004         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
1005         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
1006         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
1007         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
1008         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
1009         * sysdeps/mips/mips64/setjmp.S: Likewise.
1010         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
1011         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
1012         64-bit types.
1013
1014 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
1015
1016         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
1017         not at function level.
1018         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
1019
1020 2003-03-15  Roland McGrath  <roland@redhat.com>
1021
1022         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
1023         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
1024         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
1025         * nis/nis_table.c (__create_ib_request): Likewise.
1026
1027         * posix/fnmatch_loop.c: Add casts for signedness.
1028         * nss/nss_files/files-hosts.c: Likewise.
1029         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
1030         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
1031         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
1032
1033         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
1034         get errors into the log file.
1035         (libc_cv_broken_visibility_attribute): Likewise.
1036         (libc_cv_broken_alias_attribute): Likewise.
1037         (libc_cv_asm_weak_directive): Likewise.
1038         (libc_cv_need_minus_P): Likewise.
1039         (libc_cv_dot_text): Likewise.
1040         (libc_cv_asm_global_directive): Likewise.
1041         (libc_cv_asm_type_prefix): Likewise.
1042         * configure: Regenerated.
1043
1044         * nscd/cache.c (cache_search): Give first arg type `request_type'.
1045         * nscd/nscd.h: Update decl.
1046
1047         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
1048         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
1049         * elf/dl-close.c (_dl_close): Likewise.
1050         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
1051         * io/fts.c (fts_build): Likewise.
1052         * elf/cache.c (add_to_cache): Likewise.
1053         * locale/programs/locarchive.c (show_archive_content): Likewise.
1054
1055         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
1056
1057         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
1058         happy.
1059         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
1060
1061 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
1062
1063         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
1064         code for most parts.
1065
1066 2003-03-15  Roland McGrath  <roland@redhat.com>
1067
1068         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
1069         * sysdeps/unix/sysv/linux/system.c: ... here.
1070         (FORK): Don't #define if already #define'd.
1071         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
1072         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
1073         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
1074
1075         * dlfcn/tst-dlinfo.c: New file.
1076         * dlfcn/Makefile (tests): Add tst-dlinfo.
1077         ($(objpfx)tst-dlinfo): New target.
1078
1079         * dlfcn/dlinfo.c: New file.
1080         * dlfcn/Makefile (libdl-routines): Add it.
1081         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
1082         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
1083         [__USE_GNU] (RTLD_DI_*): New enum constants.
1084         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
1085         * elf/dl-load.c (cache_rpath): New inline function.
1086         (_dl_map_object): Use it.
1087         (_dl_rtld_di_serinfo): New function.
1088         * sysdeps/generic/ldsodefs.h: Declare it.
1089         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
1090
1091         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
1092         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
1093         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
1094         (__libc_start_main): Just call the generic one for most of the work.
1095
1096         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
1097         static function by that name instead of BP_SYM (__libc_start_main).
1098         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
1099         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
1100         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
1101
1102         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
1103         Use this macro for extra AT_* cases.
1104         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
1105         New macro, guts from ...
1106         (__aux_init_cache): ... here, function removed.
1107         (DL_PLATFORM_INIT): Don't define this.
1108
1109         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
1110         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
1111
1112         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
1113
1114 2003-03-14  Roland McGrath  <roland@redhat.com>
1115
1116         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
1117
1118 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
1119
1120         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
1121
1122         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
1123         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
1124
1125 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
1126
1127         * sysdeps/mips/fpu/bits/mathdef.h: New.
1128         (__NO_LONG_DOUBLE_MATH): Define for o32.
1129
1130         * sysdeps/mips/sys/asm.h: Formatting changes.
1131         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
1132         (CPADD): Define for all of them.
1133         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
1134         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
1135         NARGSAVE): Define per ABI spec.
1136         (END): Don't redefine.
1137         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
1138         LONG_SRAV): Remove duplicate definitions.
1139         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
1140         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
1141         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
1142         (PTR_LA): Define for all 3 ABIs.
1143
1144         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
1145         (elf_machine_matches_host): Prevent linking of o32 and n32
1146         together.
1147         (elf_machine_dynamic): Document assumption on $gp.
1148         (STRINGXP, STRINGXV, STRINGV_): New macros.
1149         (elf_machine_load_address): Use them to stringize PTR_LA and
1150         PTR_SUBU.
1151         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
1152         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
1153         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
1154         (__dl_runtime_resolve): Cast the symtab initializer to the
1155         right type.
1156         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
1157         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
1158         Handle 64-bit R_MIPS_REL composite relocation and accept
1159         R_MIPS_64 relocations to shift addend size to 64 bits.
1160         Document assumption regarding local GOT entries.  Document
1161         backward-compatibility departing from the ABI behavior in
1162         applying relocations that reference section symbols, no longer
1163         used.  Support relocations to mis-aligned offsets.
1164         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
1165
1166         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
1167
1168         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
1169         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
1170         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
1171         restore_rt functions.  Use them.
1172
1173         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
1174         .set mips2 on new abis.
1175
1176 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
1177
1178         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
1179         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
1180         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
1181         * sysdeps/posix/pathconf.c: Likewise.
1182         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
1183         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
1184         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
1185
1186         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
1187         words.
1188
1189 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
1190
1191         * include/gmp.h: Include/gmp-mparam.h.
1192         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
1193         gmp-impl.h.
1194
1195         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
1196         ELF_MACHINE_NO_RELA is set.
1197         * elf/rtld.c (dl_main): No prelink support for REL-only.
1198
1199         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
1200         FLAG_MIPS64_LIBN64): Define.
1201         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
1202
1203         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
1204         * sysdeps/mips/memset.S: Likewise.
1205         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
1206         depending on the ABI.
1207
1208         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
1209         Don't .set mips2 on new abi.
1210         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
1211
1212         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
1213
1214 2003-03-13  Roland McGrath  <roland@redhat.com>
1215
1216         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
1217         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
1218
1219 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
1220
1221         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
1222         literals long long.
1223         * stdlib/fpioconst.c: Likewise.
1224         * stdlib/strtod.c: Likewise.
1225
1226         * sysdeps/mips/add_n.S: Use L macro for local labels.
1227         * sysdeps/mips/addmul_1.S: Likewise.
1228         * sysdeps/mips/lshift.S: Likewise.
1229         * sysdeps/mips/memcpy.S: Likewise.
1230         * sysdeps/mips/memset.S: Likewise.
1231         * sysdeps/mips/mul_1.S: Likewise.
1232         * sysdeps/mips/rshift.S: Likewise.
1233         * sysdeps/mips/sub_n.S: Likewise.
1234         * sysdeps/mips/submul_1.S: Likewise.
1235         * sysdeps/mips/mips64/add_n.S: Likewise.
1236         * sysdeps/mips/mips64/addmul_1.S: Likewise.
1237         * sysdeps/mips/mips64/lshift.S: Likewise.
1238         * sysdeps/mips/mips64/mul_1.S: Likewise.
1239         * sysdeps/mips/mips64/rshift.S: Likewise.
1240         * sysdeps/mips/mips64/sub_n.S: Likewise.
1241         * sysdeps/mips/mips64/submul_1.S: Likewise.
1242         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
1243         conventions.  Define END as in sys/asm.h.
1244         * sysdeps/unix/mips/sysdep.S: Likewise.
1245         * sysdeps/unix/mips/wait.S: Likewise.
1246         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
1247
1248         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
1249         Cast shifted values that may be too narrow to mp_limb_t.
1250         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
1251         Likewise.
1252         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
1253         Likewise.
1254         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
1255         (__mpn_extract_long_double): Likewise.
1256         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
1257         (__mpn_construct_long_double): Likewise.
1258         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
1259         (__mpn_extract_long_double): Likewise.
1260         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
1261         (__mpn_construct_long_double): Likewise.
1262
1263 2003-03-13  Roland McGrath  <roland@redhat.com>
1264
1265         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
1266         entries in the map file match too.
1267
1268 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
1269
1270         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
1271         label .Lthread_start since current binutils don't allow branches
1272         to globally visible symbols.
1273
1274 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
1275
1276         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
1277         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
1278         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
1279         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
1280         clobbered by the syscall.
1281         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
1282         ASM_ARGS_6): Change constraints from r to index of corresponding
1283         output register.
1284         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
1285         ptid and ctid to match kernel.
1286         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
1287
1288 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
1289
1290         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
1291         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
1292         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
1293
1294 2003-03-11  Roland McGrath  <roland@redhat.com>
1295
1296         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
1297         Check SYM_MAP rather than SYM as definedness check.
1298         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
1299         Don't handle R_PPC64_REL24 reloc.
1300         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
1301
1302         * sysdeps/powerpc/powerpc64/dl-machine.h
1303         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
1304         block, so we cover all the TPREL16* flavors without 6 ||s.
1305         [USE_TLS] (elf_machine_tprel): New function.
1306         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
1307         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
1308         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
1309
1310 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
1311
1312         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
1313         instead of jalr to invoke subroutine so restoring the $gp register
1314         will work properly.
1315
1316 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1317
1318         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
1319         to __NR_pread if not defined.
1320         (__NR_pwrite64): Define to __NR_pwrite if not defined.
1321
1322 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
1323
1324         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
1325         * sysdeps/unix/sysv/linux/kernel-features.h
1326         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
1327         kernel >= 2.5.64.
1328
1329 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
1330
1331         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
1332         allocate space even for the trailing '/'.
1333         Reported by John Reiser <jreiser@BitWagon.com>.
1334
1335         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
1336         ASM_CLOBBERS_6): Define.
1337         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
1338         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
1339         to match IA-32 order.
1340         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
1341
1342 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
1343
1344         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
1345         Copy extra params for NPTL to registers used in clone syscall.
1346
1347 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1348
1349         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
1350         call names for pread and pwrite.
1351
1352 2003-03-10  Roland McGrath  <roland@redhat.com>
1353
1354         * dlfcn/Makefile (libdl-routines): Add dladdr1.
1355         * dlfcn/dladdr1.c: New file.
1356         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
1357         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
1358         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
1359         a const ElfNN_Sym ** to fill in.
1360         * include/dlfcn.h: Update decl.  Include <link.h>.
1361         * dlfcn/dladdr.c (dladdr): Update caller.
1362         * malloc/mtrace.c (tr_where): Likewise.
1363         * sysdeps/generic/elf/backtracesyms.c: Likewise.
1364         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
1365         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
1366         * Versions.def (libdl): Define GLIBC_2.3.3 set.
1367
1368         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
1369         assembler command.
1370         * sysdeps/unix/Makefile (compile-syscall): New variable.
1371         Pass -g0 to compiler for assembling syscall stubs from stdin.
1372
1373         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
1374         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
1375         Define these to do nothing.
1376
1377         * configure.in: New check for -g on .S files.
1378         * configure: Regenerated.
1379         * config.make.in (have-cpp-asm-debuginfo): New variable.
1380         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
1381         * Makeconfig (ASFLAGS): New variable, if undefined and
1382         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
1383         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
1384
1385 2003-03-09  Roland McGrath  <roland@redhat.com>
1386
1387         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
1388         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
1389
1390 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
1391
1392         * po/fi.po: Update from translation team.
1393         * po/ca.po: Likewise.
1394         * po/da.po: Likewise.
1395
1396 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
1397
1398         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
1399
1400 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
1401
1402         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
1403
1404         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
1405
1406 2003-03-07  Roland McGrath  <roland@redhat.com>
1407
1408         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
1409         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
1410
1411 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
1412
1413         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
1414         stubs, we have INLINE_SYSCALL.
1415         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
1416         MAP_NONBLOCK.
1417
1418 2003-03-06  Roland McGrath  <roland@redhat.com>
1419
1420         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
1421         permanent extent and add a comment about testing its implicit teardown.
1422
1423 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1424
1425         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
1426
1427 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
1428
1429         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
1430         reversed __builtin_expect expectation.
1431
1432 2003-03-05  Roland McGrath  <roland@redhat.com>
1433
1434         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
1435         * libio/swscanf.c: Likewise.
1436         * libio/swprintf.c: Likewise.
1437
1438 2003-03-04  Roland McGrath  <roland@redhat.com>
1439
1440         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
1441         (elf_machine_rela): Always use RESOLVE_MAP, needed for
1442         R_PPC64_JMP_SLOT as well as TLS cases.
1443         (BIT_INSERT): Move parenthesis where it ought to have been.
1444         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
1445
1446         * posix/confstr.c (confstr): Correct STRING_LEN values for
1447         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
1448         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
1449
1450 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
1451
1452         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
1453
1454 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
1455
1456         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
1457         clone parameters.
1458
1459         * po/sv.po: Update from translation team.
1460
1461 2003-03-04  Andreas Jaeger  <aj@suse.de>
1462             Ulrich Drepper  <drepper@redhat.com>
1463
1464         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
1465
1466 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
1467
1468         * sysdeps/generic/dl-sysdep.h: Add double include protection.
1469
1470         * po/tr.po: Update from translation team.
1471
1472         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
1473         are holes between the segments.  Only call mprotect to set
1474         proection to PROT_NONE if there are some.
1475
1476         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
1477         Update comment.
1478
1479         * include/sched.h (__clone2): Use ... instead of adding all the
1480         new parameters.
1481
1482 2003-03-03  Roland McGrath  <roland@redhat.com>
1483
1484         * elf/dl-load.c (struct filebuf): Fix typo in last change.
1485
1486         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
1487         PI_STATIC_AND_HIDDEN.
1488
1489 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
1490
1491         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
1492         flags.
1493         * include/sched.h: Update clone2 prototype.
1494
1495 2003-03-03  Andreas Jaeger  <aj@suse.de>
1496
1497         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
1498         (llrint): Use it to correct return type.
1499         (lrint): Likewise.
1500         (lround): Likewise.
1501         (llround): Likewise.
1502
1503 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
1504
1505         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
1506         byte filebuf size.
1507
1508         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
1509         if ccs parameter isn't valid.  Reported by Andreas Schwab.
1510
1511 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1512
1513         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
1514         for system call numbers > 255.
1515         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
1516         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
1517         INTERNAL_SYSCALL): Likewise.
1518         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
1519         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
1520         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
1521         INTERNAL_SYSCALL): Likewise.
1522
1523 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1524
1525         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
1526         array if it is the initial dtv.
1527
1528 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
1529
1530         * po/es.po: Update from translation team.
1531         * po/fr.po: Likewise.
1532         * po/gl.po: Likewise.
1533         * po/sk.po: Likewise.
1534         * po/sv.po: Likewise.
1535
1536         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
1537         * misc/sys/mman.h: Add prototype for remap_file_pages.
1538         * sysdeps/generic/remap_file_pages.c: New file.
1539         * misc/Makefile (routines): Add remap_file_pages.
1540         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
1541
1542         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
1543         and MAP_NONBLOCK.
1544         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
1545         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
1546         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
1547         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
1548         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
1549         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
1550         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
1551         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
1552
1553 2003-03-03  Roland McGrath  <roland@redhat.com>
1554
1555         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
1556         * sysdeps/ia64/dl-machine.h: Likewise.
1557         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
1558         argument type.
1559         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
1560
1561         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
1562         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
1563         * locale/Versions (libc: GLIBC_2.3): Move those to ...
1564         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
1565         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
1566         * Versions.def (libc): Add GLIBC_2.3.3 set.
1567
1568         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
1569         * sysdeps/ia64/dl-machine.h: Update decl.
1570
1571 2003-03-03  Andreas Jaeger  <aj@suse.de>
1572
1573         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
1574
1575 2003-03-02  Roland McGrath  <roland@redhat.com>
1576
1577         * scripts/abilist.awk: Reject data items with apparent 0 size.
1578
1579         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
1580         after foo.* as if it were a duplicate.
1581
1582         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
1583
1584 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
1585
1586         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
1587
1588         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
1589         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
1590         if not already defined.  Use SYSDEP_GETRES to allow other files to
1591         provide alternative implementations.
1592         * sysdeps/unix/sysv/linux/clock_getres.c: New file
1593         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
1594         if not already defined.  Use SYSDEP_GETTIME to allow other files to
1595         provide alternative implementations.
1596         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
1597         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
1598         if not already defined.  Use SYSDEP_GETTIME to allow other files to
1599         provide alternative implementations.
1600         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
1601         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
1602         other files to provide alternative implementations.  Rearrange
1603         tests for invalid parameters.
1604         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
1605         * sysdeps/unix/sysv/linux/sysconf.c: New file.
1606         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1607         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
1608         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
1609         _POSIX_MONOTONIC_CLOCK.
1610
1611 2003-03-02  Roland McGrath  <roland@redhat.com>
1612
1613         * scripts/merge-abilist.awk: More checks for bogus input.
1614         Uniquify duplicate config names.
1615
1616         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
1617
1618         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
1619         from dl_reloc_overflow, make global.
1620         (__process_machine_rela): Update callers.
1621         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
1622         Add attribute_hidden to __process_machine_rela decl.
1623         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
1624
1625         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
1626         variable.
1627
1628         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
1629         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
1630         (elf_machine_rela): Clean up.
1631
1632         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
1633
1634         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
1635         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
1636         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
1637         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
1638         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
1639         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
1640         new relocs for TLS.
1641
1642         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
1643         macros out of [SHARED].
1644         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
1645
1646         * elf/elf.h: Define R_PPC_* relocs for TLS support.
1647         Clean up R_PPC64_* macro definition comments.
1648
1649         * configure.in: In "running configure fragment for" message,
1650         omit $srcdir from the name if we prepended it.
1651         * configure: Regenerated.
1652
1653         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
1654         From Jakub Jelinek <jakub@redhat.com>.
1655
1656         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
1657         which duplicated the O_DIRECT defn.
1658
1659 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
1660
1661         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
1662         random functions.
1663
1664 2003-03-01  Andreas Schwab  <schwab@suse.de>
1665
1666         * resolv/Makefile (tests): Don't depend on
1667         $(objpfx)mtrace-tst-leaks when cross compiling.
1668
1669         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
1670         __libc_stack_end through GOT since it is a global symbol.
1671
1672 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
1673
1674         * argp/argp.h: Fix a typo.
1675         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
1676
1677         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
1678
1679 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
1680
1681         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
1682         char *.
1683         (get_subexp): Likewise.
1684
1685 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
1686
1687         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
1688
1689 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
1690
1691         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
1692
1693 2003-02-27  Roland McGrath  <roland@redhat.com>
1694
1695         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
1696         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
1697         repeat it and avoids the test for the common case.
1698         Clean up and fix calculations for TLS relocs.
1699
1700         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
1701         * sysdeps/powerpc/dl-tls.h: ... here.
1702         (TLS_TP_OFFSET): New macro.
1703
1704         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
1705
1706 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
1707
1708         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
1709         code generation changes in recent gcc.
1710
1711 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
1712
1713         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
1714         Rename argument to avoid symbol conflict.
1715
1716         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
1717         [__USE_GNU] (O_DIRECT): New macro.
1718
1719 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
1720
1721         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
1722         unwind info.
1723
1724 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
1725
1726         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
1727         initializer anymore now that res_thread_freeres is more careful.
1728
1729         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
1730         except the PKTINFO.  Reset interface in PKTINFO.
1731         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
1732
1733 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
1734
1735         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
1736         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
1737         Define.
1738         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
1739         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
1740         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
1741         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
1742
1743         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
1744         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
1745
1746 2003-02-25  Andreas Jaeger  <aj@suse.de>
1747
1748         * manual/memory.texi (Malloc Tunable Parameters): Clarify
1749         behaviour of M_MMAP_THRESHOLD.
1750
1751 2003-02-25  Roland McGrath  <roland@redhat.com>
1752
1753         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
1754         zero, inidicating _res was not initialized yet.
1755
1756 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
1757
1758         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
1759         test.
1760
1761 2003-02-24  Roland McGrath  <roland@redhat.com>
1762
1763         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
1764
1765 2003-02-23  Roland McGrath  <roland@redhat.com>
1766
1767         * sysdeps/posix/pause.c: New file.
1768         * sysdeps/unix/common/pause.c: File removed.
1769
1770 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
1771
1772         * sysdeps/generic/bits/confname.h: Remove #ifs.
1773
1774         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
1775         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
1776
1777         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
1778         element to -1.
1779
1780 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
1781
1782         * sysdeps/generic/dl-sysdep.c: Avoid warning.
1783
1784 2003-02-22  Roland McGrath  <roland@redhat.com>
1785
1786         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
1787         * resolv/Makefile (tests): Add tst-leaks.
1788         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
1789         (tst-leaks-ENV): New variable.
1790         ($(objpfx)mtrace-tst-leaks): New target.
1791         (tests): Depend on it.
1792
1793         * include/libc-internal.h: Declare __libc_thread_freeres.
1794
1795         * Makerules: Fix last change to use $($(subdir)-version) when set.
1796
1797         * Makerules (install-lib-nosubdir): Depend on installed
1798         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
1799         regardless of the libfoo.so target's dependencies.
1800
1801         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
1802         Use that in $(MAKE) calls.
1803
1804 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
1805
1806         * catgets/gencat.c (read_input_file): Collision between
1807         auto-assigned numbers and user-defined nubmers is not fatal.
1808         Handle it.
1809         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
1810         * catgets/Makefile: Add rules to run test2.msg test.
1811         * catgets/test2.msg: New file.
1812
1813         * catgets/gencat.c (main): Return 1 if messages have been printed.
1814
1815         * iconv/iconv_prog.c (main): Unify messages.
1816
1817         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
1818         when shifting retval.
1819         * stdlib/tst-strtod.c (main): Add strtold test case.
1820         Reported by Fred J. Tydeman <tydeman@tybor.com>.
1821
1822 2003-02-21  Roland McGrath  <roland@redhat.com>
1823
1824         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
1825         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
1826         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
1827
1828         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
1829         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
1830         (res_thread_freeres): New function, on __libc_thread_subfreeres and
1831         __libc_subfreeres.
1832
1833         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
1834         * malloc/thread-freeres.c: New file.
1835         * malloc/Makefile (aux): Add it.
1836         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
1837         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
1838         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
1839
1840         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
1841         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
1842
1843 2003-02-21  Roland McGrath  <roland@frob.com>
1844
1845         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
1846
1847         * iconvdata/Makefile (tests): Add bug-iconv3 only if
1848         [$(have-thread-library) = yes].
1849
1850 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
1851
1852         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
1853
1854         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
1855         not chechk for errors (unless testing for 32bit variant).
1856         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
1857         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
1858         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
1859
1860 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
1861
1862         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
1863         Check for signed overflow, not unsigned.
1864
1865         * sysdeps/sparc/sparc64/elf/configure.in: New file.
1866         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
1867         Use -fcall-used-g6, not -fcall-used-g7.
1868
1869 2003-02-21  Andreas Jaeger  <aj@suse.de>
1870
1871         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
1872         mode.
1873
1874         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
1875         clear whole mxcsr but only exceptions.
1876
1877 2003-02-21  Roland McGrath  <roland@redhat.com>
1878
1879         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
1880         for libfoo.so that need $(make-link) rules.
1881
1882 2003-02-21  Roland McGrath  <roland@frob.com>
1883
1884         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
1885         to match existing struct stat layout in mig protocols.
1886
1887 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1888
1889         * version.h (VERSION): Bump to 2.3.2.
1890
1891         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
1892         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
1893         and dl-sysdep.h.
1894         * sysdeps/generic/Dist: Add sysdep-cancel.h.
1895         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
1896         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
1897         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
1898         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
1899         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
1900         ucontext_i.h.
1901         * Makefile (distribute): Add include/stubs-prologue.h,
1902         include/gnu/stubs.h, scripts/merge-abilist.awk, and
1903         scripts/extract-abilist.awk.
1904
1905 2003-02-20  Roland McGrath  <roland@redhat.com>
1906
1907         * math/Makefile (distribute): Don't add generated files.
1908
1909 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1910
1911         * math/Makefile: Rearrange variable definitions slightly to get
1912         definition in the right order.
1913
1914 2003-02-20  Roland McGrath  <roland@redhat.com>
1915
1916         * Makerules: Clean up conditional around include of tls.make.
1917         * Make-dist: Export generating=t to prevent using that.
1918         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
1919
1920 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1921
1922         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
1923         around in search if port IPPORT_RESERVED/2 has been test.
1924
1925 2002-02-20  Paolo Bonzini  <bonzini@gnu.org>
1926
1927         * posix/regcomp.c: Remove inclusions.
1928         * posix/regexec.c: Likewise.
1929         * posix/regex_internal.c: Likewise.
1930         * posix/regex_internal.h: Add inclusions here.
1931         * posix/regex.c: Only include sys/types.h before regex.h.  Include
1932         regex_internal.h here.  Include regex_internal.c before regcomp.c
1933         and regexec.c (might expose more opportunities to the C compiler).
1934
1935         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
1936
1937         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
1938         [!_LIBC] (__wcrtomb): New definition.
1939         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
1940         HAVE_LOCALE_H as well.
1941
1942 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1943
1944         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
1945         patch to check for system call errors.
1946
1947 2002-07-24  Philip Blundell  <philb@gnu.org>
1948
1949         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
1950         on unknown systems.
1951
1952 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1953
1954         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
1955         * sysdeps/unix/sysv/linux/kernel-features.h
1956         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
1957         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
1958         if possible.
1959         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
1960         interprocedure branches.
1961         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
1962         * sysdeps/powerpc/nofpu/Dist: ...here.
1963         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
1964         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
1965         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
1966         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
1967         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
1968
1969 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
1970
1971         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
1972
1973 2003-02-20  Philip Blundell  <philb@gnu.org>
1974
1975         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
1976         missing arguments to INTERNAL_SYSCALL_ERROR_P and
1977         INTERNAL_SYSCALL_ERRNO.
1978
1979 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1980
1981         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
1982         for __ASSUME_32BITUIDS.
1983
1984 2003-02-20  Andreas Schwab  <schwab@suse.de>
1985
1986         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
1987         POSIX_MADV_* constants.
1988
1989 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1990
1991         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
1992         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
1993         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
1994         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
1995
1996 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
1997
1998         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
1999
2000 2003-02-16  Roland McGrath  <roland@redhat.com>
2001
2002         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
2003
2004 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
2005
2006         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
2007         decimal input digits.
2008         * stdlib/tst-strtod.c (main): Add test for strtof bug.
2009
2010 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
2011
2012         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
2013         invalid file descriptors and missing access permissions.
2014
2015 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
2016
2017         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
2018         been found.
2019
2020         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
2021         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
2022         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
2023         and LOGIN_NAME_MAX.
2024
2025 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
2026             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2027
2028         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
2029         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
2030         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
2031         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
2032         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
2033
2034 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2035
2036         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
2037         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
2038         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
2039         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
2040         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
2041         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
2042
2043         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
2044         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
2045         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
2046         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
2047
2048         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
2049         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
2050         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
2051         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
2052
2053 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
2054
2055         * nss/getent.c (print_hosts): Print all IP addresses of one host.
2056
2057 2003-02-15  Roland McGrath  <roland@frob.com>
2058
2059         * sysdeps/mach/hurd/tls.h: New file.
2060         * sysdeps/mach/hurd/i386/tls.h: New file.
2061
2062         * mach/errsystems.awk: Include <errno.h> in generated output.
2063
2064         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
2065         use target mach-before-compile instead of generated.
2066         (mach-before-compile): New target.
2067         * Makerules: Disable use of tls.make if $(generating) is set.
2068         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
2069         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
2070         mach-shortcuts.h so mach/ generation happens before hurd/.
2071
2072 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
2073
2074         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
2075         of demorm correctly if low word is zero.
2076         Reported by Fred J. Tydeman <tydeman@tybor.com>.
2077         * math/libm-test.inc (nextafter_test): New test, but disabled due
2078         to gcc bug.
2079
2080         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
2081         counter and only call __exit_thread if this is not the last thread.
2082
2083 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
2084
2085         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
2086         subtracting map->l_tls_offset.
2087
2088 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
2089
2090         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
2091         _CS_GNU_LIBPTHREAD_VERSION.
2092         * posix/conststr.c: Handle these new values.
2093         * posix/getconf.c: Likewise.
2094
2095         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
2096         masking of version index.
2097         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
2098
2099 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
2100
2101         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
2102         correctly.  Reported by Thorsten Kukuk.
2103
2104 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
2105
2106         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
2107         _BSD_SOURCE to compiler.
2108         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
2109         Patches by Alan Modra.
2110
2111 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
2112
2113         * io/ftwtest.c: Get current working directory before and after the
2114         nftw call and make sure they match.
2115
2116 2003-02-08  Jim Meyering  <jim@meyering.net>
2117
2118         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
2119         the current directory, not just when DIR contains a slash.
2120         Reported by Manoj Srivastava.
2121
2122 2003-02-07  Jim Meyering  <jim@meyering.net>
2123
2124         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
2125         Include autoconf-recommended block of dirent/NAMELEN-related
2126         definitions and includes.  Use NAMELEN throughout, rather than
2127         _D_EXACT_NAMLEN.
2128         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
2129         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
2130         (stpcpy): Declare, if necessary.
2131         (mempcpy): Define, if necessary.
2132         [!_LIBC] (__stpcpy, __mempcpy): Define.
2133         [!_LIBC] (LXSTAT, XSTAT): Define.
2134         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
2135         (find_object): Don't use c99-style struct initializer.
2136         Tweak wording in a couple comments.
2137
2138 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2139
2140         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
2141         for SH.
2142         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
2143         after the trapa instruction.
2144         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
2145         parameters.
2146         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
2147         (NEED_SYSCALL_INST_PAD): Define.
2148         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
2149         avoid to use definition for the kernel.
2150         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
2151         Save and restore the frame pointer.
2152         (SYSCALL_INST_PAD): Define.
2153         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
2154         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
2155         after trapa instruction.
2156         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
2157         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
2158
2159 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
2160
2161         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
2162         so that it can have aliases.
2163         * inet/herrno.c (h_errno): Put it into .bss not .data section.
2164
2165 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
2166
2167         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
2168         (profile_fixup): Likewise.
2169         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
2170
2171 2002-11-24  Robert Love  <rml@tech9.net>
2172
2173         * posix/sched.h: Second parameter of sched_setaffinity and
2174         sched_getaffinity is `unsigned int', not `unsigned long'.
2175         * sysdeps/generic/sched_setaffinity.c: Likewise.
2176         * sysdeps/generic/sched_getaffinity.c: Likewise.
2177
2178 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
2179
2180         * debug/catchsegv.sh: Fix typo in error messsage.
2181         Reported by John Levon <levon@movementarian.org>.
2182
2183         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
2184         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
2185         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
2186         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2187         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
2188         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
2189         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
2190
2191         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
2192         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
2193
2194 2003-02-05  Jim Meyering  <jim@meyering.net>
2195
2196         Fix a heap-corrupting bug.
2197         * io/ftw.c: Include <limits.h>.
2198         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
2199         (process_entry): Allocate enough space to hold the resulting
2200         file name.  Don't presume that 2*dirbufsize is enough.
2201         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
2202         it is guaranteed to be defined.
2203
2204 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
2205
2206         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
2207         * iconvdata/bug-iconv3.c: New file.
2208
2209 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2210
2211         * sysdeps/unix/sysv/linux/s390/system.c: New file.
2212
2213 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
2214
2215         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
2216         check.
2217         * config.h.in (BROKEN_SPARC_WDISP22): Add.
2218
2219 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
2220
2221         * sysdeps/i386/i686/memmove.S: New file.
2222
2223 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
2224
2225         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
2226         Include kernel-features.h
2227         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
2228         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
2229         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
2230         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
2231
2232 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
2233
2234         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
2235
2236 2003-01-25  Jim Meyering  <jim@meyering.net>
2237
2238         * io/ftw.c (object_compare): Compare inode numbers before device
2239         numbers, since the former are much more likely to differ.
2240
2241 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
2242
2243         * time/tzfile.c (__tzfile_compute): Change return value type to
2244         void.  Adjust return statements.
2245         * include/time.h (__tzfile_compute): Adjust prototype.
2246
2247 2003-02-01  Jim Meyering  <jim@meyering.net>
2248
2249         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
2250         always returns 1.
2251
2252 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
2253
2254         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
2255         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
2256
2257 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
2258
2259         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
2260         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
2261         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
2262         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
2263         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
2264         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
2265         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
2266         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
2267
2268 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
2269
2270         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
2271         back to 2.4.19 for powerpc64.
2272         * sysdeps/unix/sysv/linux/kernel-features.h
2273         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
2274         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
2275
2276 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
2277
2278         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
2279         platforms with strange alignment requirements on wchar_t.
2280
2281 2003-01-31  Andreas Schwab  <schwab@suse.de>
2282
2283         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
2284         aliases, already added by make-syscalls.sh.
2285         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
2286         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
2287         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
2288         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
2289         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
2290         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
2291         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
2292         * sysdeps/unix/inet/syscalls.list: Likewise.
2293         * sysdeps/unix/syscalls.list: Likewise.
2294
2295 2003-01-31  Andreas Schwab  <schwab@suse.de>
2296
2297         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
2298         any more.
2299
2300 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
2301
2302         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
2303         not l to load tls from stack.
2304
2305 2003-01-30  Roland McGrath  <roland@redhat.com>
2306
2307         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
2308         null argument before all else.
2309         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
2310
2311 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
2312
2313         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
2314         Move to RESOLVE protected part of the header.
2315         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
2316         Likewise.
2317
2318 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
2319
2320         * stdio-common/Makefile (tests): Add bug15.
2321         (bug15-ENV): Define.
2322         * stdio-common/bug15.c: New file.
2323
2324 2002-10-07  Wolfram Gloger  <wg@malloc.de>
2325
2326         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
2327         to foreign sbrk()'s if arena is contiguous.  Bug report from
2328         Bruno Haible <bruno@clisp.org>.
2329
2330 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
2331
2332         * sysdeps/s390/libc-tls.c: Include stdlib.h.
2333
2334 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
2335
2336         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
2337         ps.__count.
2338
2339 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
2340
2341         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
2342         restoring of %r6.
2343         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
2344         64-bit load.
2345         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
2346
2347 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
2348
2349         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
2350         (allocate_static_tls): ...here.  Add __attribute_noinline__.
2351         Don't return on failure.
2352         (_dl_reloc_bad_type): Add __attribute_noinline__.
2353         * elf/do-rel.h (elf_dynamic_do_rel): Add
2354         __attribute__((always_inline)).
2355         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
2356         elf_machine_rel_relative, elf_machine_rela_relative,
2357         elf_machine_lazy_rel): Add prototypes with
2358         __attribute__((always_inline)).
2359
2360 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
2361
2362         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
2363
2364 2003-01-29  Roland McGrath  <roland@redhat.com>
2365
2366         * configure.in: Barf if configured in $srcdir.
2367
2368 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
2369
2370         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
2371         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
2372
2373 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2374
2375         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
2376         clone parameters to match the order used on ia32.
2377         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
2378
2379 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2380
2381         * elf/elf.h: Add new s390 relocs.
2382         * elf/tls-macros.h: Add s390 versions.
2383         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
2384         * sysdeps/s390/dl-tls.h: New file.
2385         * sysdeps/s390/libc-tls.c: New file.
2386         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
2387         relocs for class PLT.
2388         (elf_machine_rela): Handle TLS relocs.
2389         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
2390         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
2391         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
2392         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
2393         CLONE_CHILD_*TID flags.
2394         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
2395         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
2396         bit offset.
2397         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
2398         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
2399         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
2400         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
2401         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
2402         Likewise.
2403         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
2404         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
2405         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
2406         variants.
2407         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
2408         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
2409         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
2410         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
2411         variants.
2412
2413 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
2414
2415         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
2416         from __libc_pause.  Implement using sigsuspend.
2417         (__libc_pause): Call do_pause to do the real work.
2418
2419         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
2420         sig_or_mask parameter is is_sig != 0.
2421
2422 2003-01-21  Philip Blundell  <philb@gnu.org>
2423
2424         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
2425
2426 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
2427
2428         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
2429
2430 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
2431
2432         * stdio-common/bug14.c: Use official name for the locale.
2433
2434         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
2435         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
2436         instead of __libc_cleanup_region_end.
2437
2438         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
2439         as first parameter to __libc_cleanup_region_start.
2440
2441         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
2442         (__fe_nomask_env): Use __prctl not prctl.
2443         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
2444         prctl syscall.
2445
2446         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
2447
2448         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
2449
2450         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
2451         wrap-around in test.
2452
2453 2003-01-26  Andreas Schwab  <schwab@suse.de>
2454
2455         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
2456         compatibility symbols.  Remove INTDEF for __divdi3.
2457         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
2458         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
2459         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
2460         define.
2461         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
2462
2463 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
2464
2465         * elf/tls-macros.h: Add SPARC 32-bit definitions.
2466         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
2467         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
2468         for the first half of the header.  Include tls.h.
2469         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
2470         relocs too.
2471         (elf_machine_rela): Handle TLS relocs.
2472         * sysdeps/sparc/dl-tls.h: New file.
2473
2474         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
2475         support.
2476
2477         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
2478         * sysdeps/sparc/sparc32/memchr.S: Likewise.
2479         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
2480         * sysdeps/sparc/sparc32/strcat.S: Likewise.
2481         * sysdeps/sparc/sparc32/strchr.S: Likewise.
2482         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
2483         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
2484         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
2485         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
2486         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
2487         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
2488         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
2489         * sysdeps/sparc/sparc64/strcat.S: Likewise.
2490         * sysdeps/sparc/sparc64/strchr.S: Likewise.
2491         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
2492         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
2493         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
2494         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
2495         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
2496         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
2497
2498 2003-01-24  Andreas Schwab  <schwab@suse.de>
2499
2500         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
2501         elements, and process them backwards.
2502         * elf/Makefile ($(objpfx)tst-array4): New target.
2503         ($(objpfx)tst-array4.out): Likewise.
2504         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
2505         * elf/tst-array4.c: New file.
2506         * elf/tst-array4.exp: Likewise.
2507
2508 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
2509
2510         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
2511
2512 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
2513
2514         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
2515         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
2516         cancellation handling and handle both __NR_pread64 and __NR_pread.
2517         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
2518         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
2519         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
2520         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
2521         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
2522         case, use register names consistently.
2523
2524 2003-01-27  Wolfram Gloger  <wg@malloc.de>
2525
2526         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
2527         pointer, not of the computed chunk.  Bug report from Carlos
2528         O'Donell <carlos@baldric.uwo.ca>.
2529
2530 2003-01-25  Andreas Schwab  <schwab@suse.de>
2531
2532         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
2533         addressing to save GOT entries.
2534
2535 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
2536
2537         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
2538         inline_syscall1, inline_syscall2, inline_syscall3,
2539         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
2540         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
2541         __attribute__((unused)) to ChEcK.
2542
2543 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2544
2545         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
2546         Fix inline assembler constraints.
2547         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
2548         Likewise.
2549
2550         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
2551         -fPIC.
2552
2553 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
2554
2555         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
2556         compute the cosine, not the sine, even if x > 0.8.
2557
2558 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
2559
2560         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
2561         _nss_nis_setspent.  Work around the different prototypes.
2562         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
2563         internal_nis_endrpcent.
2564         (internal_nis_endrpcent): Change return type to void.  Change callers.
2565         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
2566         _nss_nis_setpwent.  Work around the different prototypes.
2567         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
2568         of the function to...
2569         (internal_nis_endprotoent): ... here.  New function.
2570         (internal_nis_setprotoent): Use internal_nis_endprotoent.
2571         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
2572         _nss_nis_setnetent.  Work around the different prototypes.
2573         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
2574         of the function to...
2575         (internal_nis_endnetgrent): ... here.  New function.
2576         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
2577
2578 2003-01-19  Jim Meyering  <jim@meyering.net>
2579
2580         * time/strftime.c: (widen): Merge nearly-identical definitions.
2581         (nl_get_alt_digit) [! defined my_strftime]: Define.
2582         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
2583         _nl_get_alt_digit and _nl_get_walt_digit.
2584
2585 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
2586
2587         * time/strftime.c (my_strftime): Handle very large width
2588         specifications for numeric values correctly.  Improve checks for
2589         overflow.
2590         * time/Makefile (tests): Add tst-strftime.
2591         * time/tst-strftime.c: New file.
2592
2593 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
2594
2595         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
2596         _nss_nis_sethostent.  Work around the different prototypes.
2597         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
2598         _nss_nis_setgrent.  Work around the different prototypes.
2599         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
2600         function.  Split out from _nss_nis_endetherent.
2601         (internal_nis_setetherent): Use internal_nis_endetherent instead of
2602         duplicating the code.
2603         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
2604         of _nss_nis_setaliasent.
2605         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
2606         internal_nis_endservent code, don't duplicate it.
2607
2608         * inet/rexec.c (rexec_af): Protect socket operations with
2609         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
2610         * inet/rcmd.c (rcmd_af): Likewise.
2611
2612 2003-01-17  Roland McGrath  <roland@redhat.com>
2613
2614         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
2615         Add test of value 0.80190127184058835.
2616
2617         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
2618
2619 2003-01-17  Richard Henderson  <rth@redhat.com>
2620
2621         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
2622         relocs for class PLT.
2623         * sysdeps/alpha/libc-tls.c: New file.
2624         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
2625         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
2626
2627 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
2628
2629         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
2630         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
2631         on _dl_static_lock.
2632
2633 2003-01-17  Andreas Jaeger  <aj@suse.de>
2634
2635         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
2636
2637 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
2638
2639         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
2640         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
2641         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
2642         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
2643         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
2644         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
2645         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
2646         is 2.4.21.
2647
2648 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
2649
2650         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
2651         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
2652         buffers.
2653
2654         * sysdeps/generic/sysconf.c: Unconditionally implement
2655         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
2656         * sysdeps/posix/sysconf.c: Likewise.
2657
2658 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
2659
2660         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
2661         set *err to the returned error, not to REG_ESPACE unconditionally.
2662         (build_word_op): Likewise.
2663         * posix/Makefile (tests): Add bug-regex16.
2664         * posix/bug-regex16.c: New test.
2665
2666 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
2667
2668         * elf/dl-load.c (_dl_map_object_from_fd): Use
2669         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
2670         been already initialized.
2671
2672 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
2673
2674         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
2675
2676 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
2677
2678         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
2679         allocated too.  Reported by Al Viro <aviro@redhat.com>.
2680
2681 2003-01-16  Roland McGrath  <roland@redhat.com>
2682
2683         Tweak merged .abilist file format to merge duplicate symbols in
2684         different sets into multi-version stanzas with new "| SET regexp..."
2685         header continuation lines.
2686         * scripts/merge-abilist.awk: Rewritten for new format.
2687         * scripts/extract-abilist.awk: Likewise.
2688
2689 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
2690
2691         * nscd/connections.c (nscd_run): Remove bogus return which isn't
2692         necessary with gcc 3.2+.
2693         (nscd_init): Don't use error() to print message, use dbg_log.
2694
2695         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
2696         expected size into state.
2697         (UNPACK_BYTES): Do the reverse.
2698         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
2699         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
2700         Reported by Al Viro <aviro@redhat.com>.
2701
2702         * stdio-common/Makefile (tests): Add bug14.
2703         * stdio-common/bug14.c: New file.
2704
2705         * stdio-common/vfscanf.c: When recognizing multibyte characters in
2706         string reset the byte counter after mbrtowc reported it is not a
2707         partial character.  Reported by Al Viro <aviro@redhat.com>.
2708
2709 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
2710
2711         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
2712         sysdep-cancel.h, not sysdep.h.
2713
2714 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
2715
2716         * nscd/connections.c (nscd_run): Protect accept call with
2717         TEMP_FAILURE_RETRY.
2718
2719 2003-01-15  Andreas Schwab  <schwab@suse.de>
2720
2721         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
2722         (common-generated): Add s-proto-bp.d.
2723         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
2724         of bp thunks.
2725         * sysdeps/unix/s-proto-bp.S: New file.
2726         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
2727         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
2728         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
2729
2730 2003-01-15  Roland McGrath  <roland@redhat.com>
2731
2732         * Makerules: Use -include for tls.make, suppresses warning.
2733         Move gen-as-const-headers rules up so before-compile is set in time.
2734         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
2735
2736 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
2737
2738         * nscd/nscd.c (main): Make code to close all file descriptors
2739         faster and more robust.
2740
2741         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
2742         request with one writev call.  Protect all read calls with
2743         TEMP_FAILURE_RETRY.
2744         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
2745         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
2746
2747         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
2748         Protect writev calls with TEMP_FAILURE_RETRY.
2749         * nscd/grpcache.c: Likewise.
2750         * nscd/pwdcache.c: Likewise.
2751
2752         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
2753         IPv6 address in debug output.
2754
2755 2003-01-14  Roland McGrath  <roland@redhat.com>
2756
2757         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
2758         $(objpfx) directories, and get rid of vpath directives.  The previous
2759         arrangement resulted in files being written to the source directories
2760         when run in a clean build.  Find all .abilist files in $(..)abilist/.
2761         (update-abi-%): Likewise.
2762         (generated): Don't add .symlist files, they'll be intermediates.
2763
2764         * sysdeps/generic/init-first.c: Add a comment.
2765
2766         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
2767
2768         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
2769         #includes and expressions.
2770
2771         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
2772         config list when it already contains cpu-.*-os.* without / part.
2773
2774         * Makerules (sed-remove-dotdot): New variable.
2775         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
2776         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
2777         (check-abi-config): New variable, append /tls or /notls to the tuple.
2778         (check-abi-%): Use that for -v config value.
2779         Find .abilist files in abilist/libfoo.abilist, not in subdir.
2780         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
2781
2782 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
2783
2784         * manual/install.texi: Correct description of header preparation for
2785         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
2786
2787 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
2788
2789         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
2790         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
2791         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
2792
2793 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
2794
2795         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
2796         (INTERNAL_SYSCALL): Make use of ERR parameter.
2797         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
2798         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
2799         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
2800         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
2801
2802 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
2803
2804         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
2805         == IPPROTO_TCP.
2806         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
2807
2808         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
2809         Fix entry for bit 31.
2810
2811         * iconvdata/Makefile: Add rules to build IBM866NAV.
2812         * iconvdata/ibm866nav.c: New file.
2813         * iconvdata/tst-tables.sh: Add IBM866NAV.
2814         * iconvdata/gconv-modules: Add entries for IBM866NAV.
2815
2816 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
2817
2818         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
2819         to test void* parameters.
2820
2821         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
2822         source pointer before dereferencing.
2823         (__STRING_SMALLL_GET32): Likewise.
2824         (__memset_gc): Add missing parenthesis around macro arguments.
2825         Patch by Denis Zaitsev <zzz@cd-club.ru>.
2826
2827         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
2828         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
2829
2830 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
2831
2832         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
2833         defining.
2834
2835 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2836
2837         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
2838         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
2839         here.
2840         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
2841
2842 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2843
2844         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
2845         from here...
2846         (PSEUDO): ... to here.
2847         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
2848         from here...
2849         (PSEUDO): ... to here.
2850
2851 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
2852
2853         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
2854         dirent64 instead of struct dirent for dirent.  Call readdir64
2855         instead of readdir.
2856
2857         * locale/programs/locfile.c (siblings_uncached): Use struct
2858         dirent64 instead of struct dirent for other_dentry.  Call
2859         readdir64 instead of readdir.
2860
2861         * elf/ldconfig.c (direntry): Change type to struct dirent64.
2862         (search_dir): Use readdir64 instead of readdir.
2863         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
2864
2865 2003-01-12  Roland McGrath  <roland@redhat.com>
2866
2867         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
2868         not strtol.  The former is usable in ld.so, the latter not.
2869
2870         * include/fcntl.h: Declare __libc_creat.
2871
2872         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
2873         libhurduser-link.so-no-z-defs): New variables.
2874
2875         * malloc/malloc.c: Revert last change.
2876         * malloc/malloc.h (_int_*): Move these decls to ...
2877         * include/malloc.h: ... here.  Add attribute_hidden.
2878         (_int_valloc): Declare it too.
2879
2880 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2881
2882         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
2883         search for removed searchlist.  Reported by Roland McGrath.
2884
2885         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
2886         given as start file.
2887
2888         * io/ftw.c (ftw_startup): Use correct name in check for symlink
2889         without existing target.  Patch by Jim Meyering.
2890
2891         * Makerules (build-shlib-helper): Don't use -z defs linker option
2892         if no-z-defs is defined either.
2893
2894 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2895
2896         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
2897         file.
2898
2899 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2900
2901         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
2902         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
2903
2904 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2905
2906         * io/ftwtest-sh: Add test case for relative path with /. at the end.
2907
2908 2003-01-12  Jim Meyering  <jim@meyering.net>
2909
2910         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
2911         use the basename if we've already chdir'd into its parent directory.
2912
2913 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2914
2915         * io/ftw.c (process_entry): Use relative path when using chdir()
2916         to change directory after call to ftw_dir.
2917         * io/ftwtest-sh: Add test for relative path argument to nftw()
2918         with FTW_CHDIR option.
2919
2920 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2921
2922         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
2923         Define for powerpc.
2924         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
2925         into account.
2926         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
2927         (INTERNAL_SYSCALL): Make use of ERR parameter.
2928         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
2929         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
2930         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
2931         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
2932
2933 2002-01-09  Richard Henderson  <rth@redhat.com>
2934
2935         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
2936         DTPREL64 and TPREL64 without loadbase applied.
2937
2938 2002-01-09  Richard Henderson  <rth@redhat.com>
2939
2940         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
2941         for NOT_IN_libc.
2942
2943         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
2944         * sysdeps/unix/alpha/sysdep.h: ... here.
2945         (PSEUDO_LOADGP): Remove.
2946         (PSEUDO_PROLOGUE): Load GP in non-pic case.
2947         (SYSCALL_ERROR_LABEL): New.
2948         (PSEUDO): Use it in error branch.
2949         (PSEUDO_END): Add $syscall_error label.
2950
2951 2003-01-12  Andreas Jaeger  <aj@suse.de>
2952
2953         * math/bits/mathcalls.h: Round is a const function.
2954
2955 2003-01-11  Jim Meyering  <jim@meyering.net>
2956
2957         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
2958         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
2959         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
2960         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
2961         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
2962         [!_LIBC] (internal_function, dirent64, MAX): Define.
2963         (__set_errno): Define if not already defined.
2964         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
2965         the basename, not the entire file name.
2966         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
2967         the basename, not the entire file name.
2968
2969 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2970
2971         * string/tester.c (test_strcpy): Disable last added strcpy until
2972         it is fixed.
2973
2974 2003-01-11  Philip Blundell  <philb@gnu.org>
2975
2976         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
2977
2978 2003-01-11  Andreas Schwab  <schwab@suse.de>
2979
2980         * Makerules: Add vpath for %.dynsym and %.so so that the
2981         implicit rule chaining for check-abi works.
2982
2983 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2984
2985         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
2986         Add non-PIC case.
2987
2988 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
2989
2990         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
2991         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
2992         gp is used early.
2993         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
2994         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
2995         Ensure libc.so in DT_NEEDED.
2996         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
2997         CHECK_STATIC_TLS before l_tls_offset use.
2998         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
2999         Likewise.
3000         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
3001         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
3002         Allocate TLS_PRE_TCB_SIZE bytes below result.
3003         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
3004         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
3005         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
3006         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
3007         bytes below result and add tcb_offset to memsz.
3008         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
3009         * sysdeps/ia64/dl-machine.h: Include tls.h.
3010         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
3011         too.
3012         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
3013         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
3014         * sysdeps/ia64/libc-tls.c: New file.
3015
3016 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
3017
3018         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
3019         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
3020         Fix type.  Move definition out of #if.
3021         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
3022         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
3023         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
3024         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
3025         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
3026         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
3027         support.
3028         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
3029         ftruncate64, pread64, pwrite64, truncate64 entries.
3030         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
3031         (INLINE_SYSCALL): New version that supports function call like
3032         syscalls.  Add __builtin_expect.
3033         (LOADARGS_n): Add argument size safety checks.
3034         (INTERNAL_SYSCALL): New Macro.
3035         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
3036         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
3037         redefinition of elf_fpreg_t and elf_fpregset_t.
3038
3039 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
3040
3041         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
3042         simplify test for unloading.  If loader of a DSO is unloaded do not
3043         use its scope anymore.  Fall back to own scope and adjust opencounts.
3044         Fix several comments.
3045         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
3046         the l_searchlist, not only for l_initfini.
3047
3048         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
3049         dependencies if objects cannot be removed.  Remove object with the
3050         definition as not unloadable if necessary.
3051
3052         * elf/reldep6.c: Create relocation dependency before closing the first
3053         module.
3054
3055 2003-01-10  Guido Günther  <agx@sigxcpu.org>
3056
3057         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
3058         * sysdeps/unix/mips/brk.S: Likewise.
3059         * sysdeps/unix/mips/pipe.S: Likewise.
3060
3061 2003-01-10  Andreas Schwab  <schwab@suse.de>
3062
3063         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
3064
3065         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
3066         are known to have the vfork syscall.
3067
3068         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
3069
3070         * sysdeps/unix/sysv/linux/kernel-features.h
3071         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
3072         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
3073         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
3074
3075 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
3076
3077         * elf/Makefile: Add rules to build and run reldep9 test.
3078         * elf/reldep9.c: New file.
3079         * elf/reldep9mod1.c: New file.
3080         * elf/reldep9mod2.c: New file.
3081         * elf/reldep9mod3.c: New file.
3082
3083 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
3084
3085         * elf/Makefile: Add rules to build and run nodelete2 test.
3086         * elf/nodelete2.c: New file.
3087         * elf/nodel2mod1.c: New file.
3088         * elf/nodel2mod2.c: New file.
3089         * elf/nodel2mod3.c: New file.
3090
3091 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
3092
3093         * posix/test-vfork.c (noop): Add __attribute_noinline__.
3094         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
3095         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
3096         defining it.
3097         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
3098         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
3099         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
3100         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
3101         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
3102
3103 2003-01-09  Andreas Schwab  <schwab@suse.de>
3104
3105         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
3106
3107 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
3108
3109         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
3110         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
3111         argument.
3112         (INTERNAL_SYSCALL_DECL): Define.
3113
3114 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
3115
3116         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
3117         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
3118         argument.
3119         (INTERNAL_SYSCALL_DECL): Define.
3120         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
3121         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
3122         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
3123         (INLINE_SYSCALL): Adjust.
3124         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
3125         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
3126         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
3127         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
3128         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
3129         add err argument to INTERNAL_SYSCALL* macros.
3130         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
3131         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
3132         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
3133         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
3134         Likewise.
3135         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
3136         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
3137         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
3138
3139 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
3140
3141         Unify symbols in user namespace exported by libc.so and libc.a.
3142         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
3143         argp_fmtstream_free, and argp_fmtstream_printf.
3144         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
3145         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
3146         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
3147         argp_fmtstream_point.
3148         * gmon/gmon.c: Don't define write_profiling.
3149         * libio/genops.c: Don't define _cleanup.
3150
3151         * intl/explodename.c (_nl_find_language.c): Mark as static.
3152         * intl/loadinfo.h: Remove _nl_find_language prototype.
3153
3154         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
3155         * libio/libioP.h: Remove declaration.
3156
3157         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
3158         * libio/libioP.h: Remove declaration.
3159
3160         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
3161         * sysdeps/generic/framestate.c: Define STATIC before including
3162         unwind-dw2.c.
3163
3164         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
3165
3166 2003-01-06  Philip Blundell  <philb@gnu.org>
3167
3168         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
3169         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
3170
3171         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
3172         directive.
3173         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
3174         (SYSCALL_ERROR): New.
3175         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
3176         handling code.
3177         (INTERNAL_SYSCALL): Define.
3178         (INLINE_SYSCALL): Use it.
3179         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
3180         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
3181         SYSCALL_ERROR in place of __syscall_error.
3182
3183 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
3184
3185         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
3186         __bswap_32, __bswap_64): Put x into temporary variable
3187         to avoid warnings.
3188         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
3189         (inline) functions.
3190         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
3191         __bswap_32, __bswap_64): Put x into temporary variable
3192         to avoid warnings.
3193         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
3194         (inline) functions.
3195         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
3196         Likewise.
3197
3198 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
3199
3200         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
3201         alias.
3202
3203 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
3204
3205         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
3206         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
3207
3208 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
3209
3210         * math/libm-test.inc (significand_test): New function.
3211         (main): Call it.
3212
3213 2003-01-06  Roland McGrath  <roland@redhat.com>
3214
3215         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
3216         arguments.
3217         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
3218         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
3219         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
3220
3221         * string/tester.c (test_strcpy): Add test with `void *' arguments.
3222
3223 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
3224
3225         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
3226         return significand and not the exponent.
3227         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
3228
3229         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
3230         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
3231
3232         * malloc/malloc.c: Mark all _int_* functions as static.
3233
3234 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
3235
3236         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
3237         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
3238         handling.
3239         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
3240
3241 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3242
3243         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
3244         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
3245         support.
3246         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
3247         ftruncate64, truncate64, pread64 and pwrite64 entries.
3248         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
3249         (INLINE_SYSCALL): Add __builtin_expect.
3250         (LOADARGS_n): Add argument size safety checks.
3251         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
3252         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
3253         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
3254         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
3255         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
3256         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
3257
3258 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
3259
3260         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
3261         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
3262         (LIBC_CANCEL_HANDLED): Add.
3263
3264         * sysdeps/unix/sysv/linux/alpha/sysdep.h
3265         (inline_syscall_r0_constraint): Rename to...
3266         (inline_syscall_r0_out_constraint): ... this.  Add =.
3267         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
3268
3269 2003-01-06  Andreas Schwab  <schwab@suse.de>
3270
3271         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
3272         sure this is always inlined.
3273         (elf_machine_rela): Likewise.
3274
3275         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
3276
3277 2003-01-04  Roland McGrath  <roland@redhat.com>
3278
3279         * Makeconfig (+mkdep): Add -MP flag.
3280         Suggested by Art Haas <ahaas@airmail.net>.
3281
3282 2003-01-05  Andreas Schwab  <schwab@suse.de>
3283
3284         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
3285
3286 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3287
3288         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
3289         SYSCALL_ERROR_HANDLER.
3290         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
3291         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
3292         Add support for cancellation handling.
3293         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
3294         SYSCALL_ERROR_HANDLER.
3295         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
3296         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
3297         Add support for cancellation handling.
3298         (SYSCALL_ERROR_HANDLER): Define PIC variants.
3299
3300 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
3301
3302         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
3303         __syscall_pread64 and __syscall_pwrite64 cancelable.
3304         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
3305         (INTERNAL_SYSCALL): New macro.
3306         (LOADARGS_0, LOADARGS_1): Fix.
3307
3308 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
3309
3310         * Makerules (build-shlip-helper): Unless told otherwise, add
3311         -Wl,-z,defs to linker command line.
3312         * rt/Makefile (librt.so): Link with ld.so.
3313         * dlfcn/Makefile (libdl.so): Likewise.
3314
3315 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
3316
3317         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
3318         cancellation handling.
3319         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
3320         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
3321
3322 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
3323
3324         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
3325         order of parameters passed to kill.
3326
3327 2003-01-04  Andreas Schwab  <schwab@suse.de>
3328
3329         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
3330
3331 2002-01-03  Paul Eggert  <eggert@twinsun.com>
3332
3333         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
3334         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
3335         when compiling Bison 1.875's `bitset bset = obstack_alloc
3336         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
3337
3338 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
3339
3340         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
3341         unnecessary code.
3342         Correct reference counter in case SIGQUIT handler installation failed.
3343
3344 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
3345
3346         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
3347         Define using _Pragma(weak ...).
3348
3349 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
3350
3351         * resolv/res_libc.c: Provide declaration for __res_init_weak and
3352         reorder declarations.
3353
3354 2003-01-03  Art Haas  <ahaas@airmail.net>
3355
3356         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
3357         initializer syntax to C99.
3358         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
3359         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
3360         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
3361         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
3362         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
3363         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
3364         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
3365         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
3366         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
3367         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
3368         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
3369         * localedata/tests-mbwc/dat_mblen.c: Likewise.
3370         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
3371         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
3372         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
3373         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
3374         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
3375         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
3376         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
3377         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
3378         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
3379         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
3380         * localedata/tests-mbwc/dat_towlower.c: Likewise.
3381         * localedata/tests-mbwc/dat_towupper.c: Likewise.
3382         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
3383         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
3384         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
3385         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
3386         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
3387         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
3388         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
3389         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
3390         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
3391         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
3392         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
3393         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
3394         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
3395         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
3396         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
3397         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
3398         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
3399         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
3400         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
3401         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
3402         * localedata/tests-mbwc/dat_wctob.c: Likewise.
3403         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
3404         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
3405         * localedata/tests-mbwc/dat_wctype.c: Likewise.
3406         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
3407
3408 2003-01-03  Richard Henderson  <rth@redhat.com>
3409
3410         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
3411         (inline_syscall_r0_constraint): New.
3412         (inline_syscall[0-6]): Use them.
3413
3414 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
3415
3416         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
3417         Add rtld_hidden_proto.
3418         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
3419         (_dl_allocate_tls): Likewise.  Remove INTDEF.
3420
3421 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3422
3423         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
3424         Morita <toshiyasu.morita@hsa.hitachi.com>.
3425         * sysdeps/sh/memcpy.S: Likewise.
3426
3427 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
3428
3429         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
3430         any, but unify the test.
3431
3432 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
3433
3434         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
3435         sigaction): Protect weak_alias and libc_hidden_weak with
3436         #ifndef LIBC_SIGACTION.
3437         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
3438         sigaction): Likewise.
3439         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
3440         sigaction): Likewise.
3441         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
3442         sigaction): Likewise.
3443         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
3444         sigaction): Likewise.
3445         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
3446         sigaction): Likewise.
3447         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
3448         sigaction): Likewise.
3449         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
3450         sigaction): Likewise.  Remove SIGCANCEL handling here.
3451         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
3452         Likewise.
3453
3454 2003-01-02  Art Haas  <ahaas@airmail.net>
3455
3456         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
3457
3458 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
3459
3460         * posix/getconf.c: Update copyright year.
3461         * nss/getent.c: Likewise.
3462         * nscd/nscd_nischeck.c: Likewise.
3463         * iconv/iconvconfig.c: Likewise.
3464         * iconv/iconv_prog.c: Likewise.
3465         * elf/ldconfig.c: Likewise.
3466         * catgets/gencat.c: Likewise.
3467         * csu/version.c: Likewise.
3468         * elf/ldd.bash.in: Likewise.
3469         * elf/sprof.c (print_version): Likewise.
3470         * locale/programs/locale.c: Likewise.
3471         * locale/programs/localedef.c: Likewise.
3472         * nscd/nscd.c (print_version): Likewise.
3473         * debug/xtrace.sh: Likewise.
3474         * malloc/memusage.sh: Likewise.
3475         * malloc/mtrace.pl: Likewise.
3476
3477 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
3478
3479         * io/sys/stat.h: Include time.h with __need_timespec even if
3480         __USE_MISC is defined but __USE_XOPEN is not.
3481
3482 2003-01-01  Andreas Jaeger  <aj@suse.de>
3483
3484         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
3485         type to avoid strict aliasing problem.
3486         (_nss_dns_gethostbyname2_r): Likewise.
3487         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
3488         (_nss_dns_getnetbyname_r): Likewise.
3489         * resolv/gethnamaddr.c (_gethtent): Likewise.
3490         (gethostbyname2): Likewise.
3491
3492 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
3493
3494         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
3495         to avoid using the exported symbols.  Define aliases with the
3496         original names separately.
3497
3498         * include/time.h: Add libc_hidden_proto for __strftime_l.
3499         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
3500         * time/strftime.c: Always use libc_hidden_def if _LIBC.
3501
3502         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
3503         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
3504
3505         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
3506         tr_break.
3507
3508         * csu/Makefile (routines): Add dso_handle.
3509         * csu/dso_handle.c: New file.
3510
3511 2002-12-31  Roland McGrath  <roland@redhat.com>
3512
3513         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
3514         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
3515         (S-CPPFLAGS): Add -DASSEMBLER here instead.
3516         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
3517
3518 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
3519
3520         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
3521         is available.
3522
3523 2002-12-31  Andreas Jaeger  <aj@suse.de>
3524
3525         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
3526         with Linux kernel.
3527         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
3528         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
3529         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
3530
3531         * sysdeps/unix/sysv/linux/kernel_stat.h
3532         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
3533
3534         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
3535         __unused[1-3] since they're needed by some platforms.  Handle
3536         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
3537
3538         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
3539         for structs stat and stat64.
3540         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
3541         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
3542         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
3543         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
3544
3545         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
3546
3547         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
3548         nsec resolution changes.
3549         (xstat64_conv): Likewise.
3550         (xstat32_conv): Likewise.
3551
3552         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
3553         struct kernel_stat.
3554
3555         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
3556         structs stat and stat64.
3557
3558         * time/time.h (__timespec_defined): Define for __USE_MISC.
3559
3560 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
3561
3562         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
3563         and __libc_current_sigrtmax.
3564
3565 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
3566
3567         * include/errno.h (__errno_location): Add prototype.
3568         Use libc_hidden_proto unconditionally.
3569         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
3570         unconditionally.
3571         * include/resolv.h (__res_state): Likewise.
3572
3573         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
3574         * include/sys/socket.h (accept): Add libc_hidden_proto.
3575         * include/errno.h (__errno_location): Likewise.
3576         * include/netdb.h (__h_errno_location): Likewise.
3577         * include/resolv.h (__res_state): Likewise.
3578         * include/unistd.h (__lseek): Likewise.
3579         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
3580         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
3581         * sysdeps/generic/res-state.c (__res_state): Likewise.
3582         * sysdeps/generic/accept.c (accept): Likewise.
3583         * sysdeps/generic/lseek.c (__lseek): Likewise.
3584         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
3585         __libc_current_sigrtmax): Likewise.
3586         * sysdeps/mach/hurd/accept.c (accept): Likewise.
3587         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
3588         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
3589         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
3590         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
3591         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
3592         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
3593         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
3594         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
3595         alias to llseek.
3596         (__GI_accept): New alias to accept.
3597         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
3598         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
3599         New alias to llseek.
3600         (__GI_accept): New alias to accept.
3601         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
3602         Likewise.
3603         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
3604         Likewise.
3605         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
3606
3607         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
3608         strong_alias (name, __GI_name).
3609         * sysdeps/arm/bsd-_setjmp.S : Likewise.
3610         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
3611         * sysdeps/i386/bsd-_setjmp.S : Likewise.
3612         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
3613         * sysdeps/mips/bsd-_setjmp.S : Likewise.
3614         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
3615         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
3616         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
3617         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
3618         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
3619         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
3620         * sysdeps/sh/bsd-_setjmp.S : Likewise.
3621         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
3622         * sysdeps/unix/arm/fork.S : Likewise.
3623         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
3624         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
3625         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
3626         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
3627         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
3628         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
3629         * sysdeps/unix/i386/fork.S : Likewise.
3630         * sysdeps/unix/mips/fork.S : Likewise.
3631         * sysdeps/unix/sparc/fork.S : Likewise.
3632         * sysdeps/unix/sparc/vfork.S : Likewise.
3633         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
3634         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
3635         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
3636         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
3637         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
3638         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
3639         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
3640         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
3641         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
3642         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
3643         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
3644         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
3645         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
3646         * sysdeps/unix/fork.S : Likewise.
3647         * sysdeps/vax/bsd-_setjmp.S : Likewise.
3648         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
3649
3650         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
3651         inclusion.
3652
3653 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
3654
3655         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
3656         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
3657         * sysdeps/mach/hurd/fork.c: Likewise.
3658         * sysdeps/unix/sysv/aix/fork.c: Likewise.
3659         * sysdeps/unix/fork.S: Add __GI___fork alias.
3660         * sysdeps/unix/arm/fork.S: Likewise.
3661         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
3662         * sysdeps/unix/i386/fork.S: Likewise.
3663         * sysdeps/unix/mips/fork.S: Likewise.
3664         * sysdeps/unix/sparc/fork.S: Likewise.
3665         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
3666         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
3667         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
3668         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
3669         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
3670         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
3671         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
3672         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
3673         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
3674         * sysdeps/unix/sparc/vfork.S: Likewise.
3675         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
3676         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
3677         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
3678         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
3679         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
3680         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
3681         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
3682         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
3683
3684         * include/time.h: Add libc_hidden_proto for __nanosleep.
3685         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
3686         * sysdeps/mach/nanosleep.c: Likewise.
3687         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
3688         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
3689
3690         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
3691         _IO_list_unlock, and _IO_list_resetlock.
3692         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
3693         _IO_list_unlock, and _IO_list_resetlock.
3694
3695         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
3696         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
3697         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
3698         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
3699
3700         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
3701         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
3702         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
3703         __GI___longjmp alias.
3704
3705         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
3706         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
3707         * sysdeps/arm/bsd-_setjmp.S: Likewise.
3708         * sysdeps/generic/bsd-_setjmp.c: Likewise.
3709         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
3710         * sysdeps/i386/bsd-_setjmp.S: Likewise.
3711         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
3712         * sysdeps/mips/bsd-_setjmp.S: Likewise.
3713         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
3714         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
3715         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
3716         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
3717         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
3718         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
3719         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
3720         * sysdeps/sh/bsd-_setjmp.S: Likewise.
3721         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
3722         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
3723         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
3724         * sysdeps/vax/bsd-_setjmp.S: Likewise.
3725         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
3726
3727 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
3728
3729         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
3730
3731 2002-12-30  Roland McGrath  <roland@redhat.com>
3732
3733         * Rules (generated): Target removed.
3734         * mach/Makefile (generated): Define it here instead.
3735
3736         * math/Makefile (generated): Add m_*l and m_*f variants too.
3737
3738 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
3739
3740         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
3741         the to-be-deleted objects right away instead of later separately.
3742         The latter fails because the scope data structures of the DSO
3743         might already be gone.
3744
3745         * elf/Makefile: Add rules to build and run reldep8 test.
3746         * elf/reldep8.c: New file.
3747         * elf/reldep8mod1.c: New file.
3748         * elf/reldep8mod2.c: New file.
3749         * elf/reldep8mod3.c: New file.
3750         Contributed by Jakub Jelinek.
3751
3752 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
3753
3754         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
3755         checking of return value ENOSYS from getdents64.
3756
3757 2002-12-28  Andreas Schwab  <schwab@suse.de>
3758
3759         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
3760         ($(common-objpfx)s-%.d): Generalized from
3761         $(common-objpfx)s-proto.d rule.
3762         (common-generated): Add s-proto-cancel.d.
3763         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
3764         cancellable syscalls.
3765         * sysdeps/unix/s-proto-cancel.S: New file.
3766
3767 2002-12-29  Roland McGrath  <roland@redhat.com>
3768
3769         * resolv/res_libc.c: Move _res defn magic after res_init defn
3770         so _res macro is in effect for that code.
3771
3772         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
3773         pattern for prepending $(..) so it doesn't affect $(foo).
3774
3775         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
3776
3777 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
3778
3779         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
3780         in hwcap.
3781
3782 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
3783
3784         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
3785
3786 2002-12-28  Andreas Jaeger  <aj@suse.de>
3787
3788         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
3789         avoid warning.
3790         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
3791
3792 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
3793
3794         * inet/herrno.c (__h_errno_location): Remove.
3795         * inet/Makefile (routines): Add herrno-loc.
3796         * resolv/res_libc.c (__res_state): Remove.
3797         * resolv/Makefile (routines): Add res-state.
3798         * sysdeps/generic/herrno-loc.c: New file.
3799         * sysdeps/generic/res-state.c: New file.
3800
3801 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
3802
3803         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
3804         Only define if USE_DL_SYSINFO is defined.
3805
3806 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
3807
3808         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
3809         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
3810         Define. Patch by Richard Henderson and Jes Sorensen.
3811         (PSEUDO): Remove unnecessary ;;.
3812         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
3813         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
3814         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
3815         if not initializing thread pointer.
3816         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
3817         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
3818         make it weak also if NONTLS_INIT_TP.
3819         * sysdeps/unix/common/pause.c: Handle cancellation.
3820         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
3821         (LOADSYSCALL): Remove.
3822         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
3823         (SYSCALL_ERROR_HANDLER): Use it.
3824         (PSEUDO): Don't jump around error handler.
3825         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
3826         jump around error handler.
3827         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
3828         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
3829         to __syscall_error_handler on failure.
3830         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
3831         (LOADSYSCALL): Remove.
3832         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
3833         (SYSCALL_ERROR_HANDLER): Use it.
3834         (PSEUDO): Don't jump around error handler.
3835         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
3836         jump around error handler.
3837         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
3838         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
3839         to __syscall_error_handler on failure.
3840
3841 2002-12-27  Roland McGrath  <roland@redhat.com>
3842
3843         * scripts/gen-as-const.awk: New file.
3844         * Makefile (distribute): Add it.
3845         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
3846         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
3847         to the list.
3848         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
3849
3850 2002-12-27  Andreas Schwab  <schwab@suse.de>
3851
3852         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
3853
3854 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
3855
3856         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
3857         _environ is NULL.
3858
3859 2002-12-27  Andreas Schwab  <schwab@suse.de>
3860
3861         * Makerules ($(common-objpfx)%.make): Filter through
3862         $(sed-remove-objpfx).
3863
3864 2002-12-23  Roland McGrath  <roland@redhat.com>
3865
3866         * scripts/abilist.awk: Produce a more compact format, divided into
3867         stanzas for each version set, the set name listed only once.
3868         * scripts/extract-abilist.awk: New file.
3869         * scripts/merge-abilist.awk: New file.
3870         * Makerules (check-abi-%, update-abi-%): New pattern rules.
3871         (update-abi, check-abi): New targets.
3872         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
3873
3874 2002-12-19  Roland McGrath  <roland@redhat.com>
3875
3876         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
3877
3878         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
3879         INTERNAL_SYSCALL.
3880
3881 2002-12-21  Andreas Schwab  <schwab@suse.de>
3882
3883         * elf/check-textrel.c (handle_file): Swap p_type.
3884
3885 2002-12-21  Andreas Schwab  <schwab@suse.de>
3886
3887         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
3888         (INLINE_SYSCALL): Use it.
3889         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
3890         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3891
3892         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
3893         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
3894
3895 2002-12-20  Art Haas  <ahaas@airmail.net>
3896
3897         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
3898         syntax to C99.
3899
3900 2002-12-21  Philip Blundell  <philb@gnu.org>
3901
3902         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
3903         top as seventh arg to __libc_start_main.
3904         Reported by paulnash@wildseed.com.
3905
3906         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
3907
3908         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
3909         compatibility cruft when new enough kernel is assumed.
3910
3911 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
3912
3913         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
3914         instead of INLINE_SYSCALL.
3915
3916 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
3917
3918         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
3919         typo.
3920
3921         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
3922         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
3923         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
3924         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
3925         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
3926         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
3927         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
3928         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
3929         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
3930         Patch by William Lee Irwin <wli@holomorphy.com>.
3931
3932 2002-12-20  Andreas Schwab  <schwab@suse.de>
3933
3934         * locale/programs/ld-measurement.c (measurement_output): Fix
3935         index calculation.
3936
3937 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
3938
3939         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
3940         Redefine _IO_flockifle and _IO_funlockfile as inlines.
3941
3942         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
3943         builds add "tls" in the search path.
3944         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
3945         (path_hwcap): Recognize "tls".
3946
3947 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
3948
3949         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
3950         __waitpid instead of waitpid.
3951
3952         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
3953         int $0x80.
3954         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
3955         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
3956         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
3957
3958         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
3959         information for system calls.
3960
3961         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
3962         for ld.so.
3963
3964         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
3965
3966 2002-12-19  Roland McGrath  <roland@redhat.com>
3967
3968         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
3969         * iconvdata/ibm922.h: Likewise.
3970         * iconvdata/ibm930.h: Likewise.
3971         * iconvdata/ibm932.h: Likewise.
3972         * iconvdata/ibm933.h: Likewise.
3973         * iconvdata/ibm935.h: Likewise.
3974         * iconvdata/ibm937.h: Likewise.
3975         * iconvdata/ibm939.h: Likewise.
3976         * iconvdata/ibm943.h: Likewise.
3977         * iconvdata/isiri-3342.h: Likewise.
3978
3979 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
3980
3981         * test-skeleton.c (main): Make sure correct value is seen as
3982         argv[0] after adjustment of argv, and argc.
3983
3984         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
3985         RTLD_CORRECT_DYNAMIC_WEAK is defined.
3986
3987 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
3988
3989         * nscd/connections.c (nscd_run): Shut up warning.
3990         * tst-ungetc.c (assert): Undefined before redefining.
3991
3992 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
3993
3994         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
3995         is used.
3996
3997 2002-12-17  Art Haas  <ahaas@airmail.net>
3998
3999         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
4000         * iconvdata/cp775.h: Likewise.
4001         * iconvdata/ibm1046.h: Likewise.
4002         * iconvdata/ibm1124.h: Likewise.
4003         * iconvdata/ibm1129.h: Likewise.
4004         * iconvdata/ibm1132.h: Likewise.
4005         * iconvdata/ibm1133.h: Likewise.
4006         * iconvdata/ibm1160.h: Likewise.
4007         * iconvdata/ibm1161.h: Likewise.
4008         * iconvdata/ibm1162.h: Likewise.
4009         * iconvdata/ibm1163.h: Likewise.
4010         * iconvdata/ibm1164.h: Likewise.
4011
4012 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
4013
4014         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
4015         __ASSUME_CLONE_THREAD_FLAGS is defined.
4016         * sysdeps/unix/sysv/linux/kernel-features.h
4017         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
4018
4019 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
4020
4021         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
4022         of asm.
4023         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
4024
4025         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
4026         _dl_sysinfo.
4027         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
4028         code.
4029         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
4030         _rtld_global.
4031         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
4032         code.
4033         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
4034         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
4035         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
4036         Add _dl_sysinfo.
4037
4038 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
4039
4040         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
4041         __libc_writev to...
4042         [libc: GLIBC_PRIVATE]: ...here.
4043         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
4044         __libc_msgsnd to...
4045         [libc: GLIBC_PRIVATE]: ...here.
4046
4047 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
4048
4049         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
4050         Use it instead of directly int $0x80.
4051         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
4052         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
4053         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
4054         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
4055         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
4056         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
4057
4058 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
4059
4060         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
4061
4062         * elf/elf.h (AT_SYSINFO): New define.
4063         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
4064         AT_SYSINFO.
4065
4066 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
4067
4068         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
4069         Make cancelable.
4070         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
4071         Likewise.
4072         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
4073         Likewise.
4074         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
4075         Likewise.
4076         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
4077         Likewise.
4078         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
4079
4080         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
4081         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
4082         available, otherwise __libc_maybe_call.
4083         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
4084         cancellation handling.
4085         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
4086
4087 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
4088
4089         * posix/regcomp.c (free_workarea_compile): Free the new member
4090         ORG_INDICES.
4091         (analyze): Initialize ORG_INDICES.
4092         (duplicate_node_closure): Search for a existing node, which is
4093         duplicated from the node ORG_DEST and satisfies the constraint
4094         CONSTRAINT.  And use it to avoid inifimite loop.
4095         (search_duplicated_node): New function.
4096         (duplicate_node): Store the index of the original node.
4097         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
4098         if needed.
4099         * posix/regex_internal.h (re_dfa_t): Add new members.
4100
4101 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
4102
4103         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
4104
4105 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
4106
4107         * sysdeps/posix/system.c (do_system): Add support for installation
4108         of cancellation handlers.
4109         * sysdeps/unix/sysv/linux/i386/system.c: New file.
4110
4111         * stdlib/Makefile (tests): Add tst-system.
4112         * stdlib/tst-system.c: New file.
4113
4114         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
4115         CENABLE]: Don't lose content of %ebx.
4116
4117 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
4118
4119         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
4120         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
4121
4122 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
4123
4124         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
4125         fails to return a function pointer don't use it.
4126
4127 2002-12-16  Art Haas  <ahaas@airmail.net>
4128
4129         * io/ftw.c: Convert GCC extension initializer syntax to C99.
4130         * iconvdata/iso-ir-165.c: Likewise.
4131         * iconvdata/jis0208.c: Likewise.
4132         * iconvdata/jis0212.c: Likewise.
4133
4134 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
4135
4136         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
4137         epoll_ctl, and epoll_wait.
4138         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
4139         epoll_create, epoll_ctl, and epoll_wait.
4140         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
4141         Davide Libenzi <davidel@xmailserver.org>.
4142         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
4143         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
4144         Add sys/epoll.h.
4145
4146 2002-12-16  Art Haas  <ahaas@airmail.net>
4147
4148         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
4149         syntax to C99
4150         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
4151         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
4152         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
4153
4154 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
4155
4156         * stdio-common/Makefile (routines): Remove lockfile.  Add
4157         flockfile, ftrylockfile, and funlockfile.
4158         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
4159         * sysdeps/generic/flockfile.c: New file.
4160         * sysdeps/generic/ftrylockfile.c: New file.
4161         * sysdeps/generic/funlockfile.c: New file.
4162
4163 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
4164
4165         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
4166         macros instead of doing the calls directly.
4167         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
4168         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
4169         targets.
4170
4171 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
4172
4173         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
4174         * sysdeps/ieee754/bits/nan.h: Likewise.
4175
4176         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
4177         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
4178
4179 2002-12-16  Roland McGrath  <roland@redhat.com>
4180
4181         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
4182         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
4183         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
4184
4185         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
4186         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
4187         s_putpmsg.
4188         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
4189         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
4190         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
4191         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
4192         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
4193         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
4194         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
4195         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
4196
4197 2002-12-13  Paul Eggert  <eggert@twinsun.com>
4198
4199         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
4200         is now u_int, not int.
4201         (struct XDR.x_handy): Now u_int, not int.
4202         * sunrpc/xdr_mem.c: Include <limits.h>.
4203         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
4204         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
4205         x_handy is now unsigned, not signed.
4206         Do not decrement x_handy if no change is made.
4207         (xdrmem_setpos): Check for int overflow.
4208         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
4209         (xdr_sizeof): Remove cast that is now unnecessary, now that
4210         x_handy is unsigned.
4211
4212 2002-12-15  Art Haas  <ahaas@airmail.net>
4213
4214         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
4215         * iconvdata/gap.awk: Likewise.
4216         * iconvdata/gen-8bit-gap-1.sh: Likewise.
4217         * iconvdata/gen-8bit-gap.sh: Likewise.
4218         * locale/C-address.c: Likewise.
4219         * locale/C-collate.c: Likewise.
4220         * locale/C-ctype.c: Likewise.
4221         * locale/C-identification.c: Likewise.
4222         * locale/C-measurement.c: Likewise.
4223         * locale/C-messages.c: Likewise.
4224         * locale/C-monetary.c: Likewise.
4225         * locale/C-name.c: Likewise.
4226         * locale/C-numeric.c: Likewise.
4227         * locale/C-paper.c: Likewise.
4228         * locale/C-telephone.c: Likewise.
4229         * locale/C-time.c: Likewise.
4230         * nscd/connections.c: Likewise.
4231         * nscd/grpcache.c: Likewise.
4232         * nscd/hstcache.c: Likewise.
4233         * nscd/pwdcache.c: Likewise.
4234         * stdio-common/vfprintf.c: Likewise.
4235         * stdlib/random.c: Likewise.
4236         * sysdeps/generic/siglist.c: Likewise.
4237         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
4238         * sysdeps/ieee754/bits/nan.h: Likewise.
4239         * sysdeps/posix/sprofil.c: Likewise.
4240         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
4241         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
4242         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
4243
4244 2002-12-15  Roland McGrath  <roland@redhat.com>
4245
4246         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
4247
4248         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
4249         <tls.h> here, no need for it.
4250         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
4251
4252         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
4253         parameter, not varargs parameter.
4254
4255         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
4256         argument so it's not an unused variable.
4257
4258         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
4259         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
4260         for users.
4261
4262         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
4263
4264 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
4265
4266         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
4267         original __libc_fcntl code.  Just renamed.
4268
4269 2002-12-15  Andreas Schwab  <schwab@suse.de>
4270
4271         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
4272
4273 2002-12-14  Olaf Hering  <olh@suse.de>
4274
4275         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
4276         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
4277
4278 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
4279
4280         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
4281
4282         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
4283         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
4284
4285         * sysdeps/unix/sysv/linux/open64.c: New file.
4286
4287         * sysdeps/generic/pselect.c: Add support for cancellation handling.
4288         * sysdeps/posix/open64.c: Likewise.
4289         * sysdeps/posix/sigpause.c: Likewise.
4290         * sysdeps/posix/sigwait.c: Likewise.
4291         * sysdeps/posix/system.c: Likewise.
4292         * sysdeps/posix/waitid.c: Likewise.
4293         * sysdeps/unix/sysv/linux/accept.S: Likewise.
4294         * sysdeps/unix/sysv/linux/connect.S: Likewise.
4295         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
4296         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
4297         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
4298         * sysdeps/unix/sysv/linux/poll.c: Likewise.
4299         * sysdeps/unix/sysv/linux/pread.c: Likewise.
4300         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
4301         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
4302         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
4303         * sysdeps/unix/sysv/linux/readv.c: Likewise.
4304         * sysdeps/unix/sysv/linux/recv.S: Likewise.
4305         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
4306         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
4307         * sysdeps/unix/sysv/linux/send.S: Likewise.
4308         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
4309         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
4310         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
4311         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
4312         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
4313         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
4314         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
4315         * sysdeps/unix/sysv/linux/wait.c: Likewise.
4316         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
4317         * sysdeps/unix/sysv/linux/writev.c: Likewise.
4318         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
4319         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
4320
4321 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
4322
4323         * sysdeps/generic/sysdep-cancel.h: New file.
4324         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
4325         cancelable syscall.
4326         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
4327         recvmsg, send, sendmsg, sendto): Make cancelable.
4328         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
4329         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
4330         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
4331         sendto, osf_select): Likewise.
4332         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
4333         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
4334         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
4335         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
4336         sendto): Likewise.
4337         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
4338         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
4339         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
4340         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
4341         sendto): Likewise.
4342         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
4343         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
4344         sendto, select): Likewise.
4345         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
4346         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
4347         Likewise.
4348         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
4349         select, fcntl): Likewise.
4350         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
4351         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
4352         read, readv, select, sigsuspend, write, writev): Likewise.
4353
4354 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
4355
4356         * dirent/bug-readdir1.c: Include unistd.h.
4357
4358 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
4359
4360         * locale/programs/locale.c: Include locarchive.h.
4361         (ARCHIVE_NAME): Define.
4362         (write_archive_locales): New function.
4363         (write_locales): Use it.  Ensure the same locale is not printed
4364         multiple times in verbose mode.
4365         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
4366         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
4367         functions.
4368         (struct nameent): New type.
4369         (nameentcmp): New function.
4370
4371 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
4372
4373         * posix/regex_internal.c (re_string_context_at): Guard wide char
4374         code with #ifdef RE_ENABLE_I18N.
4375
4376 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
4377
4378         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
4379
4380 2002-12-13  Roland McGrath  <roland@redhat.com>
4381
4382         * posix/bug-regex15.c: New file.
4383         * posix/Makefile (tests): Add it.
4384
4385         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
4386         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
4387
4388 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
4389
4390         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
4391
4392         * misc/syslog.c (log_cleanup): Don't use parameter in
4393         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
4394         pass NULL instead of a pointer to syslog_lock.
4395
4396 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
4397
4398         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
4399         linker map for all iconv modules.
4400         (distribute): Add gconv.map.
4401         * iconvdata/gconv.map: New file.
4402
4403         * elf/Makefile: Also check all iconv modules for text relocations.
4404
4405         * stdlib/Makefile: Remove code to automatically import GMP.
4406
4407         * elf/Makefile (tests): Add rules to build and run check-textrel.
4408         * elf/check-textrel.c: New file.
4409
4410         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
4411         directive.
4412
4413 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
4414
4415         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
4416         not st.st[am]time.
4417
4418 2002-04-30  Bruno Haible  <bruno@clisp.org>
4419
4420         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
4421         the encoding if it already has slashes.
4422         Reported by Perry Rapp <prapp@erols.com>.
4423
4424 2002-12-11  Roland McGrath  <roland@redhat.com>
4425
4426         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
4427         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
4428         Turn off PIC for compiling this file.
4429
4430 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
4431
4432         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
4433         definitions.  Not needed.
4434         [_LIBC]: Use definitions from libc-lock.h instead of referencing
4435         pthread routines directly.
4436         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
4437         mutex_init calls.
4438         (arena_get2): Don't look at return value of mutex_lock.
4439
4440 2002-12-11  Roland McGrath  <roland@redhat.com>
4441
4442         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
4443         elf-init.o instead of compiling a PIC version.
4444
4445 2002-12-11  Bruno Haible  <bruno@clisp.org>
4446
4447         * intl/gettext.h: Renamed to ...
4448         * intl/gmo.h: ... here.
4449         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
4450         * intl/gettextP.h: Update.
4451         * intl/loadmsgcat.c: Update.
4452
4453         * intl/gettextP.h (PARAMS): Make more portable.
4454         (attribute_hidden): Define as empty macro if not already defined.
4455         * intl/hash-string.h (PARAMS): Make more portable.
4456         * intl/loadinfo.h (PARAMS): Likewise.
4457         * intl/plural-exp.h (PARAMS): Likewise.
4458         (attribute_hidden): Move definition near the definition of
4459         internal_function.
4460
4461         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
4462         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
4463
4464 2002-07-13  Bruno Haible  <bruno@clisp.org>
4465
4466         * intl/dcigettext.c (freea): New macro.
4467         (FREE_BLOCKS): Free also the registered blocks.
4468         (DCIGETTEXT): Free the 'search' variable.
4469         Reported by Andreas Fischer <a.fischer@asentics.de>.
4470
4471 2002-04-27  Bruno Haible  <bruno@clisp.org>
4472
4473         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
4474         * intl/dcigettext.c: Likewise.
4475         * intl/dcgettext.c: Likewise.
4476         * intl/dgettext.c: Likewise.
4477         * intl/gettext.c: Likewise.
4478         * intl/dcngettext.c: Likewise.
4479         * intl/dngettext.c: Likewise.
4480         * intl/ngettext.c: Likewise.
4481         * intl/textdomain.c: Likewise.
4482         * intl/bindtextdom.c: Likewise.
4483         * intl/plural-exp.h: Likewise.
4484
4485 2002-01-02  Bruno Haible  <bruno@clisp.org>
4486
4487         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
4488
4489 2001-04-30  Bruno Haible  <bruno@clisp.org>
4490
4491         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
4492         default macro definitions.  Needed for mingw32.
4493
4494 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
4495
4496         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
4497         __builtin_constant_p to macro parameter.
4498
4499         * sysdeps/generic/sigpause.c: Define all functions as weak.
4500         * sysdeps/posix/sigpause.c: Likewise.
4501
4502         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
4503         type size_t.
4504
4505 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
4506
4507         * elf/tst-array1.c (preinit_array, init_array, fini_array):
4508         Explicitly align the array to sizeof (void *).
4509         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
4510
4511         * include/libc-symbols.h: Fix a comment typo.
4512
4513         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
4514         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
4515         Likewise.
4516         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
4517         Likewise.
4518         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
4519         (__libc_sigsuspend): Likewise.
4520         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
4521         (__libc_sigsuspend): Likewise.
4522         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
4523         (creat): New weak alias.
4524
4525 2002-12-10  Roland McGrath  <roland@redhat.com>
4526
4527         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
4528         contributes a manual chapter.
4529         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
4530         around xref to it.
4531
4532         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
4533         and move contents to ...
4534         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
4535         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
4536         it instead of duplicating its contents.
4537         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
4538
4539 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
4540
4541         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
4542         defined.
4543         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
4544         function.
4545         (EXTRA_LD_ENVVARS): Use it.
4546         (DL_OSVERSION_INIT): Define.
4547         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
4548         dl-librecon.h.
4549         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
4550
4551 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
4552
4553         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
4554
4555         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
4556         call.  It is not allowed to destroy pthread mutexes which are
4557         still in use even though it is safe for our implementations.  If
4558         somebody still uses the descriptor it is a bug.
4559
4560 2002-12-09  Richard Henderson  <rth@redhat.com>
4561
4562         * csu/abi-note.S: Use .p2align, not .align.
4563
4564 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
4565
4566         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
4567         __libc_select aliases.
4568
4569         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
4570         alias.
4571
4572         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
4573
4574         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
4575
4576         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
4577
4578         * sysdeps/unix/syscalls.list: Define __libc_select alias.
4579
4580         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
4581
4582         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
4583         __libc___xpg_sigpause aliases.
4584
4585         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
4586
4587         * misc/error.c: Remove use of USE_IN_LIBIO.
4588
4589 2002-12-08  Roland McGrath  <roland@redhat.com>
4590
4591         * elf/Makefile (tests): Uncomment tst-array[123].
4592         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
4593         * csu/elf-init.c: New file.
4594         * csu/Makefile (routines, static-only-routines): Add elf-init.
4595         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
4596         and __libc_csu_fini in place of _fini.
4597         * sysdeps/arm/elf/start.S: Likewise.
4598         * sysdeps/cris/elf/start.S: Likewise.
4599         * sysdeps/hppa/elf/start.S: Likewise.
4600         * sysdeps/i386/elf/start.S: Likewise.
4601         * sysdeps/ia64/elf/start.S: Likewise.
4602         * sysdeps/m68k/elf/start.S: Likewise.
4603         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
4604         * sysdeps/mips/elf/start.S: Likewise.
4605         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
4606         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
4607         * sysdeps/s390/s390-32/elf/start.S: Likewise.
4608         * sysdeps/s390/s390-64/elf/start.S: Likewise.
4609         * sysdeps/sh/elf/start.S: Likewise.
4610         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
4611         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
4612         * sysdeps/x86_64/elf/start.S: Likewise.
4613
4614         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
4615         struct containing function ptr and value, free it.
4616         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
4617         It's not safe to let the new thread use the SIGEV pointer.
4618
4619 2001-10-20  Paul Eggert  <eggert@twinsun.com>
4620
4621         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
4622         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
4623         Use strerror_r that is only a macro, even if it is not a function.
4624         (strerror): Check for HAVE_DECL_STRERROR before declaring.
4625         (private_strerror): Use prototypes, not old-style function definition.
4626         (print_errno_message): New function.
4627         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
4628         char*-flavored one.
4629         (error_tail, error, error_at_line): Use it.
4630
4631 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
4632
4633         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
4634
4635 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
4636
4637         * scripts/output-format.sed: Fix bug in one of the s expressions
4638         which used / for one too many things.
4639
4640         * include/unistd.h: Declare __libc_close.
4641
4642 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
4643
4644         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
4645
4646 2002-12-07  Roland McGrath  <roland@redhat.com>
4647
4648         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
4649         from 2002-12-06, but remove unnecessary memset call without removing
4650         necessary copy of initialization image.
4651
4652         * Makerules ($(common-objpfx)format.lds): New target.
4653         (common-generated): Add it.
4654         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
4655         * scripts/output-format.sed: New file.
4656         * Makefile (distribute): Add it.
4657
4658 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
4659
4660         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
4661         Reported by Art Haas <ahaas@airmail.net>.
4662
4663 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
4664
4665         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
4666
4667 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
4668
4669         * string/test-strncpy.c (do_random_tests): Improve test coverage.
4670
4671 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
4672
4673         * test-skeleton.c (timeout_handler): Allow expected signal to be
4674         SIGALRM.
4675
4676         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
4677
4678         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
4679
4680 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
4681
4682         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
4683         (SYSCALL_ERROR_HANDLER): Fix a pasto.
4684         Reported by Jeff Bailey <jbailey@nisa.net>.
4685
4686 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
4687
4688         * sysdeps/generic/libc-tls.c: Undo last patch.
4689
4690         * include/wctype.h: Define iswalnum with libc_hidden_proto.
4691
4692         * include/signal.h: Define raise with libc_hidden_proto.
4693
4694         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
4695         __execve instead of snprintf and execve.
4696
4697         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
4698         again a bit.
4699
4700 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
4701
4702         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
4703         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
4704
4705 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
4706
4707         * misc/syslog.c (log_cleanup): New function.
4708         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
4709         (closelog): Likewise.
4710
4711         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
4712         * elf/dl-iteratephdr.c: Likewise.
4713         * elf/dl-lookup.c: Likewise.
4714         * elf/dl-misc.c: Likewise.
4715         * elf/dl-open.c: Likewise.
4716         * elf/dl-support.c: Likewise.
4717         * elf/rtld.c: Likewise.
4718         * sysdeps/generic/ldsodefs.h: Likewise.
4719         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
4720         * sysdeps/mach/bits/libc-lock.h: Likewise.
4721         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
4722
4723 2002-12-06  Roland McGrath  <roland@redhat.com>
4724
4725         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
4726
4727         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
4728         (malloc_starter, memalign_starter, free_starter): Don't define these.
4729         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
4730         Don't declare them either.
4731         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
4732         __pthread_initialize, so no need to set hooks to *_starter.
4733         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
4734         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
4735         (__libc_malloc_pthread_startup): New function.
4736         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
4737
4738         * malloc/hooks.c (memalign_starter): New function.
4739         * malloc/malloc.c: Declare it.
4740         * malloc/arena.c (save_memalign_hook): New variable.
4741         (ptmalloc_init): Set __memalign_hook to memalign_starter.
4742
4743         * elf/dl-minimal.c (free): Clear the memory.
4744         (calloc): Just call malloc, knowing all memory it returns is cleared.
4745
4746         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
4747         malloc and memset; calloc can avoid the zeroing when redundant.
4748         (_dl_tls_setup): Likewise.
4749         * elf/dl-load.c (decompose_rpath): Likewise.
4750         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
4751         call, since memory from sbrk at startup is already zero.
4752
4753         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
4754         error string for failure, null for success.  Update callers.
4755         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
4756         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
4757
4758 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
4759
4760         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
4761         args to i:iipi.
4762         (readahead): Change args to i:iii.
4763         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
4764         Change args to i:iii.
4765         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
4766         args to i:iiii.
4767
4768 2002-12-05  Roland McGrath  <roland@redhat.com>
4769
4770         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
4771         call all functions rather than none.
4772         Reported by Mark P. Mitchell <mark@codesourcery.com>.
4773
4774 2002-12-04  Roland McGrath  <roland@redhat.com>
4775
4776         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
4777         on _nl_current_LC_* variables.
4778
4779 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
4780
4781         * dirent/bug-readdir1.c (main): Don't call closedir, just close
4782         the file descriptor.  This is testing what the bug report was about.
4783
4784 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
4785
4786         * po/be.po: New file.
4787
4788         * argp/Makefile (tests): Add tst-argp1.
4789
4790         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
4791         Change type of _attribute to void*.
4792         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
4793         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
4794         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
4795         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
4796         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
4797
4798 2002-12-04  Roland McGrath  <roland@redhat.com>
4799
4800         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
4801         members to the end, so a libpthread compiled with !USE_TLS will still
4802         find other members properly.
4803
4804         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
4805         operand for DEST memory.  Fix dummy input operand to use SRC.
4806         Reported by Davin McCall <davmac@ozonline.com.au>.
4807
4808         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
4809         alignment when initializing the DTV entry.
4810
4811         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
4812         when TLS has not been set up, try to set it up if we can.
4813         * elf/tst-tls4.c: Revert last change.
4814         * elf/tst-tls5.c: Likewise.
4815         * elf/tst-tls6.c: Likewise.
4816         * elf/tst-tls7.c: Likewise.
4817         * elf/tst-tls8.c: Likewise.
4818         * elf/tst-tls9.c: Likewise.
4819
4820         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
4821         * sysdeps/generic/ldsodefs.h: Declare it.
4822         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
4823         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
4824         function, broken out of __libc_setup_tls.
4825         (init_static_tls): Likewise.
4826         (__libc_setup_tls): Call them.
4827         (_dl_tls_setup): New function, uses new subroutines.
4828
4829         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
4830         Clear the pointer when returning true.
4831         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
4832         first element of the slotinfo list too.
4833
4834         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
4835         [SHARED].
4836
4837         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
4838         (_dl_determine_tlsoffset): Likewise.
4839
4840         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
4841         startup_error_tsd, made global.
4842         (dl_main): Update initialization.
4843         * elf/dl-tsd.c: Likewise.
4844         * sysdeps/generic/ldsodefs.h: Declare it.
4845
4846 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
4847
4848         * manual/texinfo.tex: Update from latest upstream version.
4849
4850 2002-12-03  Roland McGrath  <roland@redhat.com>
4851
4852         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
4853         area surplus in calculation for sbrk call.
4854
4855         * iconvdata/cp1125.c: New file.
4856         * iconvdata/Makefile (distribute): Add it.
4857         (modules): Add CP1125.
4858         (gen-8bit-gap-modules): Add cp1125.
4859         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
4860         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
4861
4862 2002-12-03  Andreas Jaeger  <aj@suse.de>
4863
4864         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
4865
4866 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
4867
4868         * sysdeps/posix/system.c (do_system): Make signal handler
4869         installation thread safe.
4870
4871 2002-12-02  Roland McGrath  <roland@redhat.com>
4872
4873         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
4874         caller from EXTRA to -.
4875         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
4876         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
4877         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
4878
4879 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
4880
4881         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
4882         bits of RM are cleared.
4883
4884 2002-12-02  Roland McGrath  <roland@redhat.com>
4885
4886         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
4887         TLS setup is required.
4888         * elf/tst-tls5.c: Likewise.
4889         * elf/tst-tls6.c: Likewise.
4890         * elf/tst-tls7.c: Likewise.
4891         * elf/tst-tls8.c: Likewise.
4892         * elf/tst-tls9.c: Likewise.
4893
4894         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
4895         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
4896         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
4897         for being null before calling free_slotinfo.
4898         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
4899         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
4900
4901 2002-11-30  Bruno Haible  <bruno@clisp.org>
4902
4903         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
4904         (struct __gconv_step): New field __btowc_fct.
4905         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
4906         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
4907         __BUILTIN_TRANS.
4908         (__gconv_btwoc_ascii): New declaration.
4909         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
4910         (__gconv_btwoc_ascii): New function.
4911         * iconv/gconv_builtin.h: Add BtowcFct argument to all
4912         BUILTIN_TRANSFORMATION invocations.
4913         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
4914         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
4915         * iconv/gconv_builtin.c (map): New field btowc_fct.
4916         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
4917         btowc_fct field.
4918         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
4919         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
4920         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
4921         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
4922         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
4923         (gconv_init): Initialize __btowc_fct field.
4924         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
4925         * iconv/loop.c: Document ONEBYTE_BODY.
4926         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
4927         Undefine ONEBYTE_BODY at the end.
4928         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
4929         * iconvdata/8bit-gap.c (NONNUL): New macro.
4930         (BODY for FROM_LOOP): Use it.
4931         (ONEBYTE_BODY): New macro.
4932         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
4933         (NONNUL): New macro.
4934         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
4935         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
4936         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
4937         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
4938         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
4939         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
4940         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
4941         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
4942         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
4943         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
4944         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
4945         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
4946         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
4947         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
4948         * iconvdata/ibm932.c: Include <stdbool.h>.
4949         (TRUE, FALSE): Remove macros.
4950         (BODY for FROM_LOOP): Remove unused variable rp1.
4951         (ONEBYTE_BODY): New macro.
4952         (BODY for TO_LOOP): Use bool.
4953         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
4954         * iconvdata/ibm943.c: Include <stdbool.h>.
4955         (TRUE, FALSE): Remove macros.
4956         (BODY for FROM_LOOP): Remove unused variable rp1.
4957         (ONEBYTE_BODY): New macro.
4958         (BODY for TO_LOOP): Use bool.
4959         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
4960         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
4961         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
4962         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
4963         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
4964         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
4965         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
4966         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
4967         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
4968         * iconvdata/gbbig5.c: Tweak comment.
4969
4970 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
4971
4972         * po/fi.po: Update from translation team.
4973
4974 2002-12-01  Roland McGrath  <roland@redhat.com>
4975
4976         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
4977         testing getdents64 return value.
4978
4979         * scripts/versions.awk: Don't pass -n flag to sort command.
4980
4981         * posix/bug-regex13.c: Include <string.h>.
4982
4983         * sysdeps/generic/libc-start.c (__libc_start_main): Do
4984         DL_SYSDEP_OSCHECK here.
4985         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
4986         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
4987
4988         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
4989         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
4990
4991         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
4992         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
4993
4994         * include/link.h: Comment typo fix.
4995
4996 2002-12-01  Roland McGrath  <roland@frob.com>
4997
4998         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
4999         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
5000         _POSIX_MEMORY_PROTECTION): Likewise.
5001         (_POSIX_POLL, _POSIX_SELECT): Removed.
5002
5003 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
5004
5005         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
5006         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
5007
5008 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
5009
5010         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
5011         USE___THREAD.
5012         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
5013         "=v" constraints.
5014
5015 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
5016
5017         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
5018         branch prediction buffers by using unpaired call/ret.
5019
5020 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
5021
5022         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
5023         first parameters constraint string.
5024         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
5025
5026 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
5027
5028         * posix/regcomp.c (parse_expression): Set the bit since the back
5029         reference is used in the regular expression.
5030         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
5031         of malloc failure.
5032         (re_node_set_init_copy): Likewise.
5033         * posix/regex_internal.h (state_array_t): New structure.
5034         (re_sub_match_last_t): Likewise.
5035         (re_sub_match_top_t): Likewise.
5036         (re_match_context_t): Add new members.
5037         (re_dfa_t): Likewise.
5038         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
5039         to check the matching is really correct, and retry if failed.
5040         Move the routin pruning the impossible nodes from here, ...
5041         (prune_impossible_nodes): To this function.
5042         (check_matching): Invoke check_subexp_matching_top, and replace
5043         redundant checking with transit_state_bkref invocation.
5044         (proceed_next_node): Replace strncmp with memcmp.  Reported by
5045         Paolo Bonzini  <bonzini@gnu.org>.
5046         (update_cur_sifted_state): Remove search_subexp invocation.
5047         (search_subexp): Remove this function.
5048         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
5049         optimization.
5050         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
5051         Remove unused invocation of match_ctx_add_entry.
5052         (transit_state): Invoke check_subexp_matching_top.
5053         (check_subexp_matching_top): New function.
5054         (transit_state_bkref): Remove unused array.
5055         Merge transit_state_bkref_loop.
5056         (transit_state_bkref_loop): Use get_subexp instead of
5057         sift_states_backward.  Use search_cur_bkref_entry for optimization.
5058         Merge this function to transit_state_bkref.
5059         (get_subexp): New function.
5060         (get_subexp_sub): Likewise.
5061         (find_subexp_node): Likewise.
5062         (check_arrival): Likewise.
5063         (check_arrival_expand_ecl): Likewise.
5064         (check_arrival_expand_ecl_sub): Likewise.
5065         (expand_bkref_cache): Likewise.
5066         (match_ctx_init): Initialize new members.
5067         (match_ctx_clean): New function.
5068         (match_ctx_free): Release new members.
5069         (match_ctx_free_subtops): New function.
5070         (match_ctx_add_entry): Fix indent.
5071         (search_cur_bkref_entry): New function.
5072         (match_ctx_add_subtop): Likewise.
5073         (match_ctx_add_sublast): Likewise.
5074
5075 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
5076
5077         * iconv/Makefile (tests): Remove tst-iconv4.c
5078         * iconv/tst-iconv4.c: Moved to...
5079         * iconvdata/tst-iconv4.c: ...here.  New file.
5080         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
5081
5082 2002-11-25  Roland McGrath  <roland@redhat.com>
5083
5084         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
5085         Grok AF_LINK if defined.
5086         From Momchil Velikov <velco@fadata.bg>.
5087
5088         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
5089         brdaddr, or dstaddr, just set those pointers to null and don't fail.
5090         Reported by Momchil Velikov <velco@fadata.bg>.
5091
5092         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
5093         is > sizeof IFR->ifa_addr, advance past the whole longer length.
5094         (__ifreq): Count up NIFS that way too.
5095         Reported by Momchil Velikov <velco@fadata.bg>.
5096
5097         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
5098
5099         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
5100         and <fpu_control.h>.
5101
5102 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
5103
5104         * elf/elf.h (EM_ST19): Fix typo.
5105
5106 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
5107
5108         * include/errno.h (__set_errno): Define as errno = val
5109         unconditionally.
5110
5111 2002-11-24  Roland McGrath  <roland@redhat.com>
5112
5113         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
5114         * sysdeps/posix/writev.c: Likewise.
5115         From Momchil Velikov <velco@fadata.bg>.
5116
5117         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
5118         calling *GL(dl_error_catch_tsd) for a thread-local location.
5119         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
5120         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
5121         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
5122
5123         * libio/iofflush.c: Add libc_hidden_def.
5124         * libio/iofwrite.c: Likewise.
5125         * sysdeps/generic/sigtimedwait.c: Likewise.
5126         * sysdeps/generic/sigwaitinfo.c: Likewise.
5127         * sysdeps/posix/sigwait.c: Likewise.
5128         Reported by Momchil Velikov <velco@fadata.bg>.
5129
5130         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
5131         to match <arpa/inet.h> declaration.
5132         * inet/inet_netof.c (inet_netof): Likewise.
5133         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
5134         Reported by Momchil Velikov <velco@fadata.bg>.
5135
5136         * configure.in: Skip AUTOCONF check under --without-cvs.
5137         * configure: Regenerated.
5138
5139         * posix/Makefile (headers): Add bits/pthreadtypes.h.
5140         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
5141         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
5142
5143 2002-11-24  Andreas Schwab  <schwab@suse.de>
5144
5145         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
5146         with six arguments.
5147
5148 2002-11-19  Jim Meyering  <jim@meyering.net>
5149
5150         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
5151         as `static'.
5152         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
5153
5154 2002-11-23  Roland McGrath  <roland@redhat.com>
5155
5156         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
5157         Just produce hex output for datum sizes.
5158
5159         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
5160         Reported by Luca Barbieri <ldb@ldb.ods.org>.
5161
5162 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
5163
5164         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
5165         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
5166         and __unused3 fields.
5167         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
5168         [__WORDSIZE == 32]: Only PPC32 requires __unused1
5169         and __unused2 fields.
5170         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
5171         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
5172         __unused3, and __unused4 fields.
5173
5174         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
5175         obtain lowest address for profiling in __monstartup call.
5176
5177 2002-11-21  Roland McGrath  <roland@redhat.com>
5178
5179         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
5180         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
5181
5182         * locale/localeinfo.h (struct locale_data): Revert last change.
5183
5184         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
5185         From Ian Wienand <ianw@gelato.unsw.edu.au>.
5186
5187         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
5188         __NR_pread64 if not defined.
5189         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
5190         From Ian Wienand <ianw@gelato.unsw.edu.au>.
5191
5192 2002-11-21  Roland McGrath  <roland@frob.com>
5193
5194         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
5195         __libc_multiple_libcs here.  Call __setfpucw.
5196
5197 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
5198
5199         * elf/Makefile (tests): Don't run test-arrayX tests for now.
5200
5201         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
5202         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
5203         CLONE_CHILD_*TID flags.
5204
5205 2002-11-20  Andreas Jaeger  <aj@suse.de>
5206
5207         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
5208         We pass struct ucontext on x86-64.
5209         (GET_PC): Adjust.
5210         (GET_FRAME): Adjust.
5211         (GET_STACK): Adjust.
5212
5213 2002-11-20  Roland McGrath  <roland@redhat.com>
5214
5215         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
5216         conditionalize [! DO_VERSIONING] #error.
5217
5218         * scripts/abilist.awk: Grok function descriptor symbols.
5219
5220         * intl/tst-gettext.c (main): Check return values from setlocale.
5221         Add necessary unsetenv's to make LANG=existing-locale check work.
5222
5223         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
5224         so aborted prior runs don't confuse things.
5225
5226         * locale/localeinfo.h (struct locale_data: union locale_data_value):
5227         Use uintptr_t instead of unsigned int for `word' member.
5228         (_NL_CURRENT_WORD): Cast to uint32_t.
5229
5230         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
5231         value.
5232
5233 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
5234
5235         * elf/tls-macros.h: Add IA-64 definitions.
5236         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
5237
5238         * iconv/Makefile (tests): Add tst-iconv4.
5239         * iconv/tst-iconv4.c: New file.
5240
5241         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
5242         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
5243         __GCONV_INCOMPLETE_INPUT.
5244         (ucs4le_internal_loop): Likewise.
5245         (ucs4le_internal_loop_unaligned): Likewise.
5246         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
5247         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
5248         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
5249
5250         * iconv/loop.c (LOOPFCT): First test for empty input then for full
5251         output buffer.
5252
5253         * inet/getnameinfo.c: Use extend_alloca where appropriate.
5254         * sysdeps/posix/getaddrinfo.c: Likewise.
5255
5256         * include/alloca.h (extend_alloca): New define.  Based on stack
5257         direction it'll try to append to the previouls allocated buffer.
5258
5259 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
5260
5261         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
5262         use the same service for AF_INET and AF_INET6.
5263
5264 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
5265
5266         * intl/localealias.c (read_alias_file): Use only about 400 bytes
5267         of stack space instead of 16k.
5268
5269 2002-11-18  Wolfram Gloger  <wg@malloc.de>
5270
5271         * malloc/arena.c
5272         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
5273         nothing if not initialized.  Bug report from Marcus Brinkmann
5274         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
5275
5276 2002-11-19  Roland McGrath  <roland@redhat.com>
5277
5278         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
5279         sched_setaffinity.
5280
5281         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
5282         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
5283         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
5284         * configure: Regenerated.
5285
5286 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
5287
5288         * include/dlfcn.h: __libc_dlopen is now a macro calling
5289         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
5290         (__libc_dlopen_mode): New prototype.
5291         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
5292         new parameter.  Store new parameter in mode field of structure passed
5293         to do_dlopen.
5294         (struct do_dlopen_args): Add new field mode.
5295         (do_dlopen): Pass mode from parameter structure to _dl_open.
5296
5297 2002-11-11  Randolf Chung  <tausq@debian.org>
5298
5299         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
5300         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
5301         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
5302
5303         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
5304
5305         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
5306         Set -mdisable-fpregs for this file.
5307
5308 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
5309
5310         * sysdeps/unix/sysv/linux/configure.in:
5311         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
5312         from gcc-3.0 era for backwards compatibility.
5313         * sysdeps/unix/sysv/linux/configure: Regenerate.
5314
5315         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
5316         Define mcontext_t as a sigcontext.
5317
5318 2002-11-18  Roland McGrath  <roland@redhat.com>
5319
5320         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
5321         Free memory in `last_result' if it was used.
5322
5323         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
5324         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
5325         Do the parsing inline instead of copying strings and calling
5326         inet_network, and properly skip all alias names not matching the form.
5327
5328         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
5329
5330 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
5331
5332         * manual/pattern.texi (Wordexp Example): Fix sample code.
5333
5334         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
5335         childs stack which will be loaded into the %esi register.
5336
5337 2002-11-14  Paul Eggert  <eggert@twinsun.com>
5338
5339         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
5340         overflow when skipping the question part and when unpacking aliases.
5341
5342 2002-11-15  Roland McGrath  <roland@redhat.com>
5343
5344         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
5345         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
5346         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
5347
5348 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
5349
5350         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
5351         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
5352
5353 2002-11-15  Roland McGrath  <roland@redhat.com>
5354
5355         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
5356         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
5357         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
5358         (+make-include-of-dep): New canned sequence.
5359
5360         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
5361         From Dmitry V. Levin <ldv@altlinux.org>.
5362
5363 2002-11-14  Roland McGrath  <roland@redhat.com>
5364
5365         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
5366         * inet/herrno.c (__libc_h_errno): Likewise.
5367         * resolv/res_libc.c (__libc_res): Likewise.
5368         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
5369         (__res_state) [! USE___THREAD]: Don't define as weak.
5370         * csu/Versions: Revert last change.
5371         * resolv/Versions: Revert last change.
5372
5373         * Makerules ($(common-objpfx)%.make): New pattern rule.
5374         * tls.make.c: New file.
5375         * Makefile (distribute): Add it.
5376
5377         * sysdeps/generic/errno.c [! USE___THREAD]
5378         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
5379         with compat_symbol so they are not link-time visible.
5380         [! USE___THREAD] (__libc_errno): New alias for errno.
5381         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
5382         Add __libc_errno here.
5383         * inet/herrno.c [USE___THREAD]: Use this conditional
5384         in place of [USE_TLS && HAVE___THREAD].
5385         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
5386         (h_errno, _h_errno): Declare these with compat_symbol so they are not
5387         link-time visible.
5388         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
5389         * resolv/res_libc.c [! USE___THREAD]
5390         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
5391         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
5392         (__libc_res): Define as alias for _res.
5393         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
5394         Add __libc_h_errno and __libc_res here.
5395
5396 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
5397
5398         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
5399         * resolv/Versions (h_errno, _res): Likewise.
5400
5401 2002-11-14  Roland McGrath  <roland@redhat.com>
5402
5403         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
5404         (%.symlist): Likewise.
5405
5406 2002-11-13  Roland McGrath  <roland@redhat.com>
5407
5408         * scripts/abilist.awk: New file.
5409         * Makefile (distribute): Add it.
5410         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
5411         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
5412         [$(subdir) = elf] (tests): Depend on libc.symlist.
5413         (generated, common-generated): Add those files.
5414
5415         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
5416         * configure: Regenerated.
5417         * config.make.in (OBJDUMP): New variable, substituted by configure.
5418
5419         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
5420         (mallochook, reallochook): Set them up.
5421         (checkhdr): Check HDR->magic2 value.
5422         (freehook): Reset HDR->magic2.
5423         (memalignhook): New static function.
5424         (old_memalign_hook): New static variable.
5425         (mcheck, reallochook): Set __memalign_hook to memalignhook.
5426
5427         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
5428         for the new TCB.
5429
5430 2002-11-13  Andreas Jaeger  <aj@suse.de>
5431
5432         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
5433         attribute.
5434         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
5435
5436 2002-11-11  Paul Eggert  <eggert@twinsun.com>
5437
5438         * manual/crypt.texi (Cryptographic Functions): Mention that
5439         the MD5 one-way algorithm is compatible with BSD's.
5440
5441 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
5442
5443         * posix/regex_internal.c (re_string_skip_chars): Also return the last
5444         wide character.
5445         (re_string_reconstruct): Calculate the context by itself when the
5446         offset points out of the valid range.
5447         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
5448         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
5449         (IS_WIDE_WORD_CHAR): New macro.
5450         (IS_WIDE_NEWLINE): New macro.
5451
5452 2002-11-12  Andreas Jaeger  <aj@suse.de>
5453
5454         * sysdeps/x86_64/strchr.S: Don't use one register for two
5455         purposes, this fixes a bug noticed by test-strchr.c.
5456
5457         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
5458         correctly.
5459
5460 2002-11-12  Roland McGrath  <roland@redhat.com>
5461
5462         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
5463         (_G_IO_NO_BACKWARD_COMPAT): Define it.
5464
5465         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
5466         instead of <pt-machine.h>.
5467         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
5468         testandset.
5469         From Ian Wienand <ianw@gelato.unsw.edu.au>.
5470
5471 2002-11-10  Roland McGrath  <roland@redhat.com>
5472
5473         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
5474         Call fputs instead of fwprintf (simpler to follow in debugger).
5475
5476         * crypt/md5-crypt.c: Doc fix.
5477
5478         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
5479         the beginning of generated target commands.
5480
5481         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
5482         dependencies for these in case implicit rule search skipped the
5483         nonexistent source directory.
5484         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
5485         files with $(object-suffixes) as targets too.
5486         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
5487         and a target for it using $(make-target-directory).
5488
5489         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
5490
5491 2002-11-10  Roland McGrath  <roland@frob.com>
5492
5493         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
5494         * sysdeps/generic/bits/pthreadtypes.h: ... here.
5495
5496         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
5497         l_start == 0 and l_len == 1 as we do l_len == 0.
5498
5499 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
5500
5501         * po/da.po: Update from translation team.
5502
5503 2002-11-10  Roland McGrath  <roland@redhat.com>
5504
5505         * config.make.in (includedir): New variable, substituted by configure.
5506         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
5507         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
5508
5509 2002-11-10  Andreas Jaeger  <aj@suse.de>
5510
5511         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
5512         REG_OLDMASK and REG_CR2 to synch with kernel header.
5513         (NGREG): Increase.
5514
5515         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
5516         aliasing problem.
5517         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
5518         * nss/getnssent_r.c (__nss_getent_r): Likewise.
5519         (__nss_setent): Likewise.
5520         (__nss_getent_r): Likewise.
5521         * inet/getnetgrent_r.c (innetgr): Likewise.
5522         (__internal_setnetgrent_reuse): Likewise.
5523         (internal_getnetgrent_r): Likewise.
5524         * inet/ether_hton.c (ether_hostton): Likewise.
5525         * inet/ether_ntoh.c (ether_ntohost): Likewise.
5526         * sunrpc/netname.c (netname2user): Likewise.
5527         * sunrpc/publickey.c (getpublickey): Likewise.
5528         (getsecretkey): Likewise.
5529
5530 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
5531
5532         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
5533         error in range calculation.
5534
5535 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
5536
5537         * string/test-strspn.c (do_test): Ensure zero termination.
5538         * string/test-strpbrk.c (do_test): Likewise.
5539         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
5540         * string/test-strncpy.c (stupid_strncpy): Likewise.
5541         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
5542
5543 2002-10-08  Roland McGrath  <roland@redhat.com>
5544
5545         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
5546         nonzero characters.
5547
5548 2002-09-22  H.J. Lu  <hjl@gnu.org>
5549
5550         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
5551         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
5552         only if __NR_mmap2 is defined.
5553
5554         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
5555         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
5556         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
5557         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
5558
5559 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
5560
5561         * posix/bug-regex13.c (tests): Add new test.
5562
5563         * string/test-strchr.c (stupid_strchr): New function.
5564         (do_random_tests): Make sure the string is zero terminated.
5565         * string/test-strpbrk.c (stupid_strpbrk): New function.
5566         (do_random_tests): Make sure the string is zero terminated.
5567         * string/test-strcmp.c (stupid_strcmp): New function.
5568         (do_random_tests): Make sure the strings are zero terminated.
5569         * string/test-strspn.c (stupid_strspn): New function.
5570         (simple_strspn): Rename rej argument to acc.
5571         (do_random_tests): Make sure the string is zero terminated.
5572         * string/test-strcspn.c (stupid_strcspn): New function.
5573         * string/test-strncpy.c (stupid_strncpy): New function.
5574         * string/test-stpncpy.c (stupid_stpncpy): New function.
5575         * string/test-strncmp.c (stupid_strncmp): New function.
5576         (do_random_tests): Make sure the strings are zero terminated.
5577         * string/test-string.h (impl_t): Change test into long.
5578         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
5579
5580 2002-11-08  Roland McGrath  <roland@redhat.com>
5581
5582         * sysdeps/ia64/elf/configure.in: Add TLS check.
5583         From Ian Wienand <ianw@cse.unsw.edu.au>.
5584         * sysdeps/ia64/elf/configure: Regenerated.
5585
5586 2002-11-07  Roland McGrath  <roland@redhat.com>
5587
5588         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
5589         place of _IO_new_do_write.
5590         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
5591         #undef before versioned_symbol use.
5592
5593 2002-11-07  Richard Henderson  <rth@redhat.com>
5594
5595         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
5596         * configure: Regenerated.
5597         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
5598         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
5599         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
5600         _dl_fini via gp-relative relocations.
5601         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
5602
5603         * elf/tls-macros.h: Add alpha versions.
5604         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
5605         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
5606         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
5607         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
5608         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
5609         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
5610         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
5611         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
5612         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
5613         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
5614         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
5615         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
5616         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
5617         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
5618         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
5619         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
5620         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
5621         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
5622
5623         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
5624         Kill argument registers across the inline syscall.
5625
5626         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
5627
5628         * linuxthreads/sysdeps/alpha/tls.h: New file.
5629         * sysdeps/alpha/dl-tls.h: New file.
5630
5631 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
5632
5633         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
5634         (gmon_initializer): New function.
5635         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
5636         __gmon_start__ here.  Call it from gmon_initializer() instead.
5637
5638 2002-03-12  H.J. Lu  <hjl@gnu.org>
5639
5640         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
5641         tst-array2, and tst-array3.
5642         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
5643         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
5644         ($(objpfx)tst-array1.out): New target.
5645         ($(objpfx)tst-array2): Likewise.
5646         ($(objpfx)tst-array2.out): Likewise.
5647         ($(objpfx)tst-array3.out): Likewise.
5648         * elf/tst-array1.c: New file.
5649         * elf/tst-array1.exp: Likewise.
5650         * elf/tst-array2.c: Likewise.
5651         * elf/tst-array2dep.c: Likewise.
5652         * elf/tst-array2.exp: Likewise.
5653         * elf/tst-array3.c: Likewise.
5654
5655 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
5656
5657         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
5658         Don't add L->l_addr to array entry values.
5659
5660 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
5661
5662         * string/test-string.h: New file.
5663         * string/test-strlen.c: New file.
5664         * string/test-string.h: New file.
5665         * string/test-strcmp.c: New file.
5666         * string/test-strchr.c: New file.
5667         * string/test-strrchr.c: New file.
5668         * string/test-strcpy.c: New file.
5669         * string/test-stpcpy.c: New file.
5670         * string/test-strncpy.c: New file.
5671         * string/test-stpncpy.c: New file.
5672         * string/test-strpbrk.c: New file.
5673         * string/test-strcspn.c: New file.
5674         * string/test-strspn.c: New file.
5675         * string/test-strcat.c: New file.
5676         * string/test-strncmp.c: New file.
5677         * string/test-memchr.c: New file.
5678         * string/test-memcmp.c: New file.
5679         * string/test-memset.c: New file.
5680         * string/test-memcpy.c: New file.
5681         * string/test-mempcpy.c: New file.
5682         * string/test-memmove.c: New file.
5683         * string/Makefile (strop-tests): New variable.
5684         (tests): Add strop-tests.
5685         (distribute): Add test-string.h.
5686
5687 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
5688
5689         * posix/regcomp.c: Use tabs instead of spaces.
5690         * posix/regexec.c: Likewise.
5691         * posix/regex_internal.h: Likewise.
5692
5693         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
5694
5695 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
5696
5697         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
5698         here.
5699         (regcomp): Don't set can_be_null here.
5700         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
5701         (re_compile_internal): Clear can_be_null, set regs_allocated.
5702
5703         * posix/regcomp.c (re_set_fastmap): New function.
5704         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
5705         COMPLEX_BRACKET check.
5706         * posix/regexec.c (re_search_internal): Optimize searching with
5707         fastmap.  Call re_string_reconstruct even if match_first is
5708         smaller than raw_mbs_idx.
5709
5710 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
5711
5712         * posix/regcomp (free_dfa_content): Use free_state.
5713         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
5714         pointers in case that realloc failed.
5715         (re_node_set_merge): Likewise.
5716         (register_state): Likewise.
5717         (create_newstate_common): Invoke memory release functions in case of
5718         error conditions.
5719         (create_ci_newstate): Likewise.
5720         (create_cd_newstate): Likewise.
5721         (free_state): New function.
5722         * posix/regexec.c (re_search_internal): Invoke memory release
5723         functions in case of error conditions.
5724         (sift_states_backward): Likewise.
5725         (merge_state_array): Likewise.
5726         (add_epsilon_src_nodes): Likewise.
5727         (sub_epsilon_src_nodes): Likewise.
5728         (search_subexp): Likewise.
5729         (sift_states_bkref): Likewise.
5730         (transit_state_sb): Likewise.
5731         (transit_state_mb): Likewise.
5732         (transit_state_bkref_loop): Likewise.
5733         (group_nodes_into_DFAstates): Likewise.
5734         (push_fail_stack): Don't edit pointers in case that realloc failed.
5735         (extend_buffers): Likewise.
5736         (match_ctx_add_entry): Likewise.
5737
5738 2002-11-06  Roland McGrath  <roland@redhat.com>
5739
5740         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
5741         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
5742
5743         * configure.in: Add checks on as and ld for binutils 2.13 or later.
5744         * configure: Regenerated.
5745
5746 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
5747
5748         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
5749         If re_compile_internal failed free fastmap buffer.
5750         (free_dfa_content): Broken out of regfree function.  Frees all dfa
5751         related data.
5752         (regfree): Add free_dfa_content.
5753         (re_compile_internal): If any of the called functions fails free
5754         all dfa related memory.
5755
5756 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5757
5758         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
5759         warnings from the kernel headers.
5760
5761 2002-11-05  Roland McGrath  <roland@redhat.com>
5762
5763         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
5764         From Johannes Stezenbach <js@convergence.de>.
5765
5766         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
5767         #errlist-compat magic comment to give 123 as size.
5768         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
5769         (libc: GLIBC_2.2): ... here.
5770         (libc: GLIBC_2.3): Likewise.
5771
5772 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5773
5774         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
5775         which happens at the beginning so that we can unload modules in
5776         __libc_freeres.
5777
5778 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5779
5780         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
5781         under [__USE_MISC || _ASM].
5782
5783         * elf/elf.h: Remove the obsolete SH TLS relocations.
5784
5785 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5786
5787         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
5788
5789 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5790
5791         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
5792         __NR_pread64 and __NR_pwrite64.
5793         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
5794         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
5795         and __NR_pwrite64.
5796         Revert change to use INLINE_SYSCALL.
5797         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
5798         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
5799         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
5800         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
5801         INLINE_SYSCALL.
5802         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
5803
5804         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
5805         Update clobber list and add a comment about the syscall ABI.
5806
5807         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
5808         s_pwrite64, s_ftruncate, s_truncate): Re-add.
5809
5810 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
5811
5812         * iconv/gconv_dl.c (free_mem): Clear loaded.
5813         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
5814         cleanup if any.
5815
5816 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5817
5818         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
5819
5820         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
5821         as old code without locking.  _IO_seekoff calls this function after
5822         locking the stream.
5823         * libio/ioseekpos.c: Likewise for _IO_seekpos.
5824         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
5825         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
5826         prototypes.
5827         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
5828         of _IO_seekoff_internal.
5829         (_IO_rewind): Likewise.
5830         * libio/ioftell.c: Likewise.
5831         * libio/ftello.c: Likewise.
5832         * libio/ftello64.c: Likewise.
5833         * libio/iofgetpos.c: Likewise.
5834         * libio/iofgetpos64.c: Likewise.
5835         * libio/oldiofgetpos.c: Likewise.
5836         * libio/oldiofgetpos64.c: Likewise.
5837         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
5838         _IO_seekpos_internal.
5839         * libio/iofsetpos64.c: Likewise.
5840         * libio/oldiofsetpos.c: Likewise.
5841         * libio/oldiofsetpos64.c: Likewise.
5842
5843 2002-11-04  Roland McGrath  <roland@redhat.com>
5844
5845         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
5846         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
5847         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
5848         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
5849         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
5850         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
5851         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
5852         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
5853         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
5854         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
5855         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
5856         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
5857         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
5858         Remove these, no longer used.
5859
5860 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5861
5862         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
5863         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
5864         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
5865         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
5866         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
5867         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
5868         syscall stubs.
5869
5870         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
5871         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
5872         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
5873         and __NR_pread.
5874         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
5875         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
5876         and __NR_pwrite.
5877         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
5878
5879 2002-11-03  Roland McGrath  <roland@redhat.com>
5880
5881         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
5882         `_dl_tls_static_used'.
5883         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
5884         (__libc_setup_tls): Initialize it.  Let the initial value of
5885         _dl_tls_static_size indicate some surplus space in the computed value.
5886         * elf/dl-open.c (_dl_tls_static_size): New variable.
5887         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
5888         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
5889         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
5890         (CHECK_STATIC_TLS): Use it.
5891         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
5892         closed objects occupied a trailing contiguous chunk of static TLS area.
5893
5894 2002-10-18  Bruno Haible  <bruno@clisp.org>
5895
5896         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
5897
5898 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
5899
5900         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
5901         _wide_data->_IO_read_end if adjustment can be made in the current
5902         buffer.
5903
5904         * sysdeps/unix/sysv/linux/fexecve.c: New file.
5905
5906         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
5907         wide oriented streams are used.
5908
5909         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
5910         service hasn't been used [PR libc/4744].
5911
5912         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
5913         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
5914
5915         * manual/examples/dir.c: Don't include <stddef.h>.
5916         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
5917         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
5918
5919 2002-11-02  H.J. Lu  <hjl@gnu.org>
5920
5921         * stdio-common/reg-printf.c: Include <stddef.h>.
5922
5923 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
5924
5925         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
5926
5927         * po/ca.po: Update from translation team.
5928         * po/es.po: Likewise.
5929
5930         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
5931         is defined write out memory map.
5932         * sysdeps/unix/sysv/linux/segfault.c: New file.
5933
5934 2002-11-02  Roland McGrath  <roland@redhat.com>
5935
5936         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
5937         pointers that can alias.
5938         Reported by Daniel Jacobowitz <drow@mvista.com>.
5939
5940         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
5941
5942 2002-11-02  Roland McGrath  <roland@redhat.com>
5943
5944         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
5945         description to be clearer and to say that *RESULT is set to ENTRY.
5946
5947 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
5948
5949         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
5950         dests_ch arrays together.  Alloca or malloc dest_states,
5951         dest_states_word and dest_states_nl arrays together.  Free memory on
5952         error exit.
5953
5954 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
5955
5956         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
5957         and current_saltbits.
5958
5959 2002-11-02  Roland McGrath  <roland@redhat.com>
5960
5961         * stdio-common/reg-printf.c: Include <stdlib.h>.
5962
5963 2002-11-02  H.J. Lu  <hjl@gnu.org>
5964
5965         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
5966         caller to EXTRA instead of execve.
5967
5968 2002-11-01  Roland McGrath  <roland@redhat.com>
5969
5970         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
5971         in place of [!(USE_TLS && HAVE___THREAD)].
5972         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
5973
5974 2002-10-31  Roger Sayle  <roger@eyesopen.com>
5975
5976         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
5977         New macros.
5978         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
5979
5980         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
5981         without defining FP_ROUNDMODE.
5982
5983 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
5984
5985         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
5986         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
5987         declare_symbol.
5988         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
5989         (OLD_SIGLIST_SIZE): Define.
5990         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
5991         (OLD_SIGLIST_SIZE): Define.
5992         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
5993
5994 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
5995
5996         * sysdeps/ia64/strncpy.S: Fix recovery code.
5997
5998 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
5999
6000         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
6001         New macros.
6002         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
6003         text_set_element.
6004         * elf/dl-libc.c (free_mem): Likewise.
6005         * iconv/gconv_conf.c (free_mem): Likewise.
6006         * iconv/gconv_db.c (free_mem): Likewise.
6007         * iconv/gconv_dl.c (free_mem): Likewise.
6008         * iconv/gconv_cache.c (free_mem): Likewise.
6009         * intl/finddomain.c (free_mem): Likewise.
6010         * intl/dcigettext.c (free_mem): Likewise.
6011         * locale/setlocale.c (free_mem): Likewise.
6012         * misc/fstab.c (fstab_free): Likewise.
6013         * nss/nsswitch.c (free_mem): Likewise.
6014         * posix/regcomp.c (free_mem): Likewise.
6015         * resolv/gai_misc.c (free_res): Likewise.
6016         * stdlib/fmtmsg.c (free_mem): Likewise.
6017         * sunrpc/clnt_perr.c (free_mem): Likewise.
6018         * sysdeps/generic/setenv.c (free_mem): Likewise.
6019         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
6020         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
6021         * time/tzset.c (free_mem): Likewise.
6022         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
6023         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
6024         * malloc/set-freeres.c (__libc_freeres): Likewise.
6025
6026         * login/getutent.c: Include stdlib.h instead of stddef.h.
6027         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
6028         (__getutent): Allocate buffer the first time it is run.
6029         * login/getutid.c: Include stdlib.h instead of stddef.h.
6030         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
6031         (__getutid): Allocate buffer the first time it is run.
6032         * login/getutline.c: Include stdlib.h instead of stddef.h.
6033         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
6034         (__getutline): Allocate buffer the first time it is run.
6035         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
6036         (mtrace): Allocate malloc_trace_buffer.
6037         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
6038         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
6039         * string/strerror.c: Include libintl.h and errno.h.
6040         (buf): New variable.
6041         (strerror): Only allocate buffer if actually needed (unknown error).
6042         * time/tzfile.c (transitions): Add libc_freeres_ptr.
6043         (freeres): Remove.
6044
6045 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
6046
6047         * include/libc-symbols.h (libc_freeres_ptr): New macro.
6048         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
6049         symbol_set_define.
6050         (__libc_freeres): Free all pointers in that section.
6051         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
6052         commands when creating .lds script.
6053         (LDSEDCMD-c.so): New variable.
6054         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
6055         (rcmd_af): Use strdup to allocate ahostbuf.
6056         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
6057         (rexec_af): Use strdup to allocate ahostbuf.
6058         * stdio-common/reg-printf.c (printf_funcs): Remove.
6059         (__printf_arginfo_table): Change into printf_arginfo_function **.
6060         Add libc_freeres_ptr.
6061         (__register_printf_function): Allocate __printf_arginfo_table
6062         and __printf_function_table the first time it is called.
6063         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
6064         printf_arginfo_function **.
6065         (parse_one_spec): Add __builtin_expect.
6066         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
6067         (free_mem): Remove.
6068         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
6069         (free_mem): Remove.
6070         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
6071         (string_space, map): Add libc_freeres_ptr.
6072         (free_mem): Remove.
6073         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
6074         (free_mem): Remove.
6075         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
6076         (free_mem): Remove.
6077         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
6078         (buffer): Add libc_freeres_ptr.
6079         (free_mem): Remove for _LIBC.
6080         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
6081         (free_mem): Remove.
6082         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
6083         (free_mem): Remove.
6084         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
6085         (free_mem): Remove.
6086         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
6087         (free_mem): Remove.
6088         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
6089         (free_mem): Remove.
6090         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
6091         (free_mem): Remove.
6092         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
6093         libc_freeres_ptr.
6094         (free_mem): Remove.
6095         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
6096         libc_freeres_ptr.
6097         (free_mem): Remove.
6098
6099 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
6100
6101         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
6102         instead of duplicating the whole function in libc.
6103
6104 2002-10-31  Roland McGrath  <roland@redhat.com>
6105
6106         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
6107         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
6108
6109 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
6110
6111         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
6112         32bit-predefine when creating .new32 list and -U for each
6113         32bit-predefine when creating .new64 list.
6114         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
6115
6116 2002-10-29  Andreas Schwab  <schwab@suse.de>
6117
6118         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
6119         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
6120
6121 2002-10-25  Roland McGrath  <roland@redhat.com>
6122
6123         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
6124         * sysdeps/unix/sysv/linux/configure: Regenerated.
6125
6126         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
6127         _dl_starting_up decl.
6128
6129 2002-10-20  H.J. Lu  <hjl@gnu.org>
6130
6131         * sysdeps/unix/sysv/linux/configure.in: Don't check
6132         /lib/modules/`uname -r`/build/include for kernel headers if
6133         cross compiling.
6134         * sysdeps/unix/sysv/linux/configure: Regenerated.
6135
6136 2002-10-25  Roland McGrath  <roland@redhat.com>
6137
6138         * math/math.h (M_LOG2El): Correct the value.
6139         From Stephen L Moshier <steve@moshier.net>.
6140
6141         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
6142         conditional from __libc_multiple_libcs access.  Remove kludge for weak
6143         symbol access with old compilers we no longer support.
6144         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
6145         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
6146
6147 2002-10-25  Roland McGrath  <roland@redhat.com>
6148
6149         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
6150         implement SV_RESETHAND by translating it to SA_RESETHAND.
6151
6152 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
6153
6154         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
6155         type on ELF64 platforms.
6156
6157 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
6158
6159         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
6160
6161         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
6162
6163 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
6164
6165         * elf/dl-misc.c: Include <sysdep.h>.
6166         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
6167
6168         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
6169         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
6170         (INLINE_SYSCALL): Use that.
6171         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
6172         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
6173         (INLINE_SYSCALL): Use that.
6174         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
6175         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
6176         (INLINE_SYSCALL): Use that.
6177         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
6178         dl-sysdep.h.
6179         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
6180         (__INTERNAL_SYSCALL_STRING): Define.
6181         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
6182         dl-sysdep.h.
6183         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
6184         (__INTERNAL_SYSCALL_STRING): Define.
6185         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
6186         __SYSCALL_STRING to inline_syscall*.
6187         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
6188         New macros.
6189         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
6190         inline_syscall4, inline_syscall5, inline_syscall6): Add string
6191         argument.
6192
6193 2002-10-24  Roland McGrath  <roland@redhat.com>
6194
6195         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
6196         * sysdeps/unix/sysv/linux/init-first.c: Not here.
6197         * sysdeps/powerpc/elf/libc-start.c: Or here.
6198         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
6199         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
6200         * sysdeps/unix/sysv/aix/init-first.c: Or here.
6201         * sysdeps/generic/libc-start.c: Or here.
6202         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
6203         access with [! SHARED].
6204         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
6205
6206         * libio/bug-wfflush.c: New file.
6207         * libio/Makefile (tests): Add bug-wfflush.
6208
6209 2002-10-23  Roland McGrath  <roland@redhat.com>
6210
6211         * stdio-common/tst-fphex.c: New file.
6212         * stdio-common/Makefile (tests): Add tst-fphex.
6213         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
6214         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
6215         chars always before the value digits.
6216         Reported by James Antill <james.antill@redhat.com>.
6217
6218 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
6219
6220         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
6221         (free_mem): New function.
6222         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
6223         if not cross compiling.
6224         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
6225         (bug-regex14-ENV): Set.
6226         (bug-regex14-mem): New target.
6227         * posix/bug-regex14.c: New file.
6228
6229 2002-10-23  Roland McGrath  <roland@redhat.com>
6230
6231         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
6232         target, so we don't touch it when the link fails.
6233
6234         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
6235         Check for the result overflowing off_t and fail with EOVERFLOW.
6236         * libio/ioftell.c (_IO_ftell): Likewise.
6237         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
6238
6239         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
6240         use a temporary timeval on the stack for gettimeofday and copy it.
6241         * login/logout.c (logout): Likewise.
6242         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
6243
6244         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
6245         Use __SWORD_TYPE instead of int for member types.
6246         (struct statfs64): Likewise.
6247         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
6248         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
6249         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
6250         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
6251         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
6252
6253         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
6254         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
6255         (ST_NODIRATIME): Restore fixed value of 2048.
6256         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
6257         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
6258
6259         Rearranged <bits/types.h> definitions to reduce duplication.
6260         * sysdeps/generic/bits/types.h: Rewritten, using macros from
6261         <bits/wordsize.h> and new header <bits/typesizes.h>.
6262         * posix/Makefile (headers): Add bits/typesizes.h here.
6263         * sysdeps/generic/bits/typesizes.h: New file.
6264         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
6265         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
6266         * sysdeps/mach/hurd/bits/typesizes.h: New file.
6267         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
6268         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
6269         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
6270         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
6271         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
6272         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
6273         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
6274         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
6275         <bits/pthreadtypes.h> here, not in <bits/types.h>.
6276         * signal/signal.h: Likewise.
6277
6278         * streams/stropts.h: Include <bits/xtitypes.h>.
6279         * streams/Makefile (headers): Add bits/xtitypes.h here.
6280         * sysdeps/generic/bits/xtitypes.h: New file.
6281         * sysdeps/s390/bits/xtitypes.h: New file.
6282         * sysdeps/ia64/bits/xtitypes.h: New file.
6283         * sysdeps/x86_64/bits/xtitypes.h: New file.
6284
6285         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
6286         * sysdeps/generic/bits/ipctypes.h: New file.
6287         * sysdeps/mips/bits/ipctypes.h: New file.
6288         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
6289         * sysdeps/gnu/bits/msq.h: Likewise.
6290         * sysvipc/sys/ipc.h: Likewise.
6291
6292 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
6293
6294         * elf/dl-load.c (struct filebuf): For buf element to have the
6295         alignment of ElfXX_Ehdr since this is what will be stored in it.
6296
6297 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
6298
6299         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
6300         into pointer to locrec_offset.
6301         (add_locale_to_archive): Adjust callers.  Free normalized_name right
6302         before returning, not immediately after add_locale, pass it to
6303         add_alias if not NULL instead of name.  Rename second normalized_name
6304         occurence to nnormalized_codeset_name.
6305
6306         * locale/programs/locarchive.c (enlarge_archive): Make sure
6307         string_size is always a multiple of 4.
6308         Reported by Andreas Schwab <schwab@suse.de>.
6309
6310 2002-10-21  Andreas Schwab  <schwab@suse.de>
6311
6312         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
6313         caller to EXTRA instead of execve, since the latter has a
6314         higher-priority implementation in linuxthreads.
6315
6316 2002-10-21  Roland McGrath  <roland@redhat.com>
6317
6318         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
6319         slotinfo list's len member to the proper size, not just 1.
6320         Initialize static_map.l_tls_initimage.
6321
6322         * elf/dl-open.c (dl_open_worker): Fix loop searching for
6323         dtv_slotinfo_list element containing new modules' l_tls_modid.
6324
6325         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
6326         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
6327         * elf/Makefile (tests): Add tst-tls9.
6328         (tests-static): Add tst-tls9-static.
6329         (tst-tls9-static-ENV): New variable.
6330         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
6331
6332         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
6333         modids used by partially loaded modules being closed can't be known.
6334
6335 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
6336
6337         * posix/Makefile: Add a test case for the bug reported by Aharon
6338         Robbins <arnold@skeeve.com>.
6339         * posix/bug-regex13.c: New file.
6340         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
6341
6342 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
6343
6344         * csu/gmon-start.c: Pretty printing.
6345
6346 2002-10-19  Art Haas  <ahaas@neosoft.com>
6347
6348         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
6349         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
6350         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
6351         * configure: Regenerated.
6352
6353 2002-10-19  Roland McGrath  <roland@redhat.com>
6354
6355         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
6356         and then set $subdirs directly, because the new Autoconf breaks
6357         compatibility in every way imaginable and insists on whining
6358         about usage that worked since the dawn of time.
6359         * configure: Regenerated.
6360
6361         * configure: Regenerated (using Autoconf 2.54).
6362         * sysdeps/alpha/elf/configure: Likewise.
6363         * sysdeps/generic/configure: Likewise.
6364         * sysdeps/i386/elf/configure: Likewise.
6365         * sysdeps/ia64/elf/configure: Likewise.
6366         * sysdeps/mach/hurd/configure: Likewise.
6367         * sysdeps/mach/configure: Likewise.
6368         * sysdeps/unix/configure: Likewise.
6369         * sysdeps/unix/common/configure: Likewise.
6370         * sysdeps/unix/sysv/aix/configure: Likewise.
6371         * sysdeps/unix/sysv/linux/configure: Likewise.
6372         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
6373         * sysdeps/x86_64/elf/configure: Likewise.
6374
6375         * config.make.in: Nix completely-soft nonsense.
6376         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
6377         of machine directories instead of fpu subdirectory.
6378         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
6379         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
6380         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
6381         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
6382         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
6383         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
6384         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
6385         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
6386         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
6387         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
6388         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
6389         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
6390         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
6391         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
6392         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
6393         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
6394         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
6395         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
6396         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
6397         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
6398         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
6399         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
6400         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
6401         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
6402         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
6403         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
6404         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
6405         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
6406         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
6407         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
6408         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
6409         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
6410         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
6411         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
6412         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
6413         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
6414         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
6415         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
6416         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
6417         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
6418
6419 2002-10-19  Bruno Haible  <bruno@clisp.org>
6420
6421         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
6422
6423 2002-10-18  Roland McGrath  <roland@redhat.com>
6424
6425         * io/Makefile (routines): Add lchmod.
6426         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
6427         * sysdeps/generic/lchmod.c: New file.
6428         * sysdeps/mach/hurd/lchmod.c: New file.
6429         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
6430
6431 2002-10-18  Art Haas  <ahaas@neosoft.com>
6432
6433         * configure.in: Remove remaining AC_FD_CC macros, and replace
6434         AC_FD_MSG with AS_MESSAGE_FD.
6435
6436 2002-10-18  Roland McGrath  <roland@redhat.com>
6437
6438         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
6439         typos: VALUE -> FINALADDR.
6440
6441         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
6442         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
6443         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
6444         (inline_syscall6): Move these macros ...
6445         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
6446
6447         * configure.in (libc_link_dests, libc_link_sources): Remove these
6448         variables and the AC_LINK_FILES call.
6449
6450         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
6451         change to put new symbols here instead of in GLIBC_2.2.
6452         * sysdeps/powerpc/Subdirs: Move this file ...
6453         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
6454
6455 2002-10-07  Roland McGrath  <roland@redhat.com>
6456
6457         * sysdeps/generic/bits/time.h: Replaced with contents of the
6458         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
6459         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
6460         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
6461         macros is ok even for architectures that don't now implement them.
6462         * sysdeps/mach/hurd/bits/time.h: File removed.
6463         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
6464         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
6465         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
6466         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
6467         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
6468
6469 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
6470
6471         * configure.in: Replace obsolete AC_OUTPUT syntax with
6472         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
6473
6474         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
6475         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
6476
6477         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
6478         * sysdeps/alpha/elf/configure.in: Likewise.
6479         * sysdeps/i386/elf/configure.in: Likewise.
6480         * sysdeps/mach/hurd/configure.in: Likewise.
6481         * sysdeps/x86_64/elf/configure.in: Likewise.
6482
6483         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
6484
6485         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
6486         * sysdeps/generic/configure.in: Likewise.
6487         * sysdeps/i386/elf/configure.in: Likewise.
6488         * sysdeps/ia64/elf/configure.in: Likewise.
6489         * sysdeps/mach/configure.in: Likewise.
6490         * sysdeps/mach/hurd/configure.in: Likewise.
6491         * sysdeps/unix/configure.in: Likewise.
6492         * sysdeps/unix/common/configure.in: Likewise.
6493         * sysdeps/unix/sysv/aix/configure.in: Likewise.
6494         * sysdeps/unix/sysv/linux/configure.in: Likewise.
6495         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
6496         * sysdeps/x86_64/elf/configure.in: Likewise.
6497
6498         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
6499         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
6500         that it's obvious when extra autoconf machinery is being dragged in.
6501
6502 2002-10-18  Roland McGrath  <roland@redhat.com>
6503
6504         * configure.in: Remove bogus echo included in
6505         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
6506         * configure: Regenerated.
6507
6508 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
6509
6510         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
6511         (statfs_filesize_max): New function.
6512         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
6513         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
6514         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
6515         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
6516         statfs_filesize_max.
6517         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
6518         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
6519         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
6520
6521 2002-10-17  Roland McGrath  <roland@redhat.com>
6522
6523         * configure.in (MIG): Just AC_SUBST it here.
6524         * configure: Regenerated.
6525         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
6526         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
6527         * sysdeps/mach/configure: Regenerated.
6528
6529         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
6530         and AC_PROVIDE([_AS_CR_PREPARE]).
6531
6532         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
6533         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
6534
6535         * elf/dl-support.c: Move _dl_tls_* variables to ...
6536         * sysdeps/generic/libc-tls.c: ... here.
6537
6538         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
6539         allow IDX to be one past the current last slotinfo entry.
6540         (_dl_close): Pass IMAP->l_init_called for that parameter.
6541
6542 2002-10-07  Andreas Schwab  <schwab@suse.de>
6543
6544         * aclocal.m4: Fix for autoconf 2.53.
6545         * configure.in: Likewise.  Require autoconf 2.53.
6546
6547 2002-10-08  Richard Henderson  <rth@redhat.com>
6548
6549         * soft-fp/op-4.h: Handle carry correctly in
6550         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
6551         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
6552         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
6553
6554 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
6555
6556         * configure.in: Compute completely-soft.
6557         * config.make.in: Make completely-soft available to sub-makes.
6558         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
6559         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
6560         fe_nomask to libm-support.
6561         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
6562         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
6563         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
6564         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
6565         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
6566         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
6567         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
6568         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
6569         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
6570         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
6571         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
6572         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
6573         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
6574         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
6575         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
6576         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
6577         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
6578         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
6579         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
6580         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
6581         __sim_round_mode.
6582         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
6583         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
6584         FP_HANDLE_EXCEPTIONS.
6585         Define FP_ROUNDMODE.
6586         Redefine FP_* macros to correspond to the FE_* bit positions.
6587         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
6588         Define externs for __sim_exceptions, __sim_disabled_exceptions,
6589         __sim_round_mode, __simulate_exceptions.
6590         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
6591         * sysdeps/powerpc/bits/fenv.h: ...to here.
6592
6593 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
6594
6595         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
6596         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
6597         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
6598         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
6599         __builtin_expect.
6600
6601 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
6602
6603         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
6604         __libc_res_nsend): New prototypes.
6605         * resolv/res_query.c (QUERYSIZE): Define.
6606         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
6607         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
6608         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
6609         res_nsend, pass answerp.
6610         (res_nquery): Changed into wrapper around __libc_res_nquery.
6611         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
6612         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
6613         instead of the non-__libc_ variants, pass them answerp.
6614         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
6615         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
6616         Added answerp argument.  Call __libc_res_nquery instead of
6617         res_nquery, pass answerp.
6618         (res_nquerydomain): Changed into wrapper around
6619         __libc_res_nquerydomain.
6620         * resolv/res_send.c: Include sys/ioctl.h.
6621         (MAXPACKET): Define.
6622         (send_vc): Change arguments.  Reallocate answer buffer if it is
6623         too small.
6624         (send_dg): Likewise.
6625         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
6626         Reallocate answer buffer if it is too small and hooks are in use.
6627         Adjust calls to send_vc and send_dg.
6628         (res_nsend): Changed into wrapper around __libc_res_nsend.
6629         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
6630         just 1K answer buffer on the stack, use __libc_res_nsearch instead
6631         of res_nsearch.
6632         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
6633         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
6634         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
6635         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
6636         (gethostbyaddr): Similarly with __libc_res_nquery.
6637         * resolv/Versions (libresolv): Export __libc_res_nquery and
6638         __libc_res_nsearch at GLIBC_PRIVATE.
6639
6640 2002-10-17  Roland McGrath  <roland@redhat.com>
6641
6642         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
6643         * configure: Regenerated.
6644
6645         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
6646         before performing the reloc, not after.
6647         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
6648
6649 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
6650
6651         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
6652         * locale/programs/linereader.c (lr_open): Likewise.
6653         * locale/programs/charmap-dir.c (charmap_open): Likewise.
6654         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
6655
6656 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
6657
6658         * posix/bug-regex11.c: Add a test case for the bug reported by
6659         Paolo Bonzini <bonzini@gnu.org>.
6660         * posix/regexec.c (sift_states_bkref): Use correct destination of
6661         the back reference.
6662
6663 2002-10-17  Roland McGrath  <roland@redhat.com>
6664
6665         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
6666         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
6667         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
6668         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
6669         Call it after performing TPOFF relocs.
6670         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
6671         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
6672         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
6673
6674         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
6675         when closing a partially-initialized object.
6676
6677         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
6678         instead of _dl_fatal_printf when we see PT_TLS.
6679
6680         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
6681         instead of $(libof-$<).
6682
6683 2002-10-16  Roland McGrath  <roland@redhat.com>
6684
6685         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
6686         instead of += to append, to be sure $(lib) gets expanded at defn time.
6687         (libof-$(cpp-src)): New variable, define this instead.
6688         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
6689         (lib): Don't use override.
6690         (CPPFLAGS-$(lib)): New variable, put -D's here.
6691         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
6692         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
6693         LIB found by $(libof-*) for basename, target, or source.
6694         * Makerules (CPPFLAGS-nonlib): New variable.
6695         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
6696         * locale/Makefile (lib): Likewise.
6697         * sunrpc/Makefile (lib): Likewise.
6698
6699         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
6700         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
6701         * sysdeps/unix/sysv/linux/pathconf.h: New file.
6702         (statfs_link_max): New function, guts from fpathconf.c.
6703         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
6704         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
6705         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
6706         to use the linux/pathconf.c code by #include rather than duplication.
6707         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
6708
6709 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
6710
6711         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6712         Use __libc_errno only for libc itself.
6713
6714 2002-10-16  Andreas Jaeger  <aj@suse.de>
6715
6716         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
6717
6718 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
6719
6720         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
6721         Use __libc_errno only for libc itself.
6722
6723 2002-10-15  Roland McGrath  <roland@redhat.com>
6724             Jakub Jelinek  <jakub@redhat.com>
6725
6726         * sysdeps/unix/sysv/linux/Makefile
6727         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
6728         sparc/Makefile to produce a bi-arch file as needed.
6729         That's now parameterized by the variable $(64bit-predefine).
6730         Use LC_ALL=C for `comm' commands in that rule.
6731         No longer conditional on [$(no_syscall_list_h)].
6732         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
6733         (64bit-predefine): New variable.
6734         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
6735         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
6736         * sysdeps/unix/sysv/linux/powerpc/Makefile
6737         (64bit-predefine): New variable.
6738
6739 2002-10-15  Roland McGrath  <roland@redhat.com>
6740
6741         * sysdeps/unix/sysv/linux/Makefile
6742         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
6743
6744         * login/utmp-private.h: Declare __libc_utmp_lock.
6745         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
6746         and call __libc_utmp_jump_table functions directly, instead of using
6747         __setutent et al.
6748
6749         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
6750         * sysdeps/unix/sysv/linux/configure: Regenerated.
6751
6752         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
6753         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
6754         Use int32_t for ll_time.
6755         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
6756         Use int32_t instead of long int for ut_session.
6757         Use an anonymous struct with 32-bit fields for ut_tv.
6758         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
6759         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
6760         here as in utmp.h for `struct utmp'.
6761         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
6762         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
6763         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
6764         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
6765         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
6766         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
6767
6768         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
6769         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
6770         All the following files were identical or equivalent to it.
6771         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
6772         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
6773         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
6774         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
6775         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
6776         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
6777         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
6778         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
6779         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
6780         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
6781
6782         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
6783         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
6784         Other than the previously incorrect sign of msg_iovlen, this is a
6785         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
6786         match their layouts as well, so the following are now identical to it.
6787         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
6788         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
6789         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
6790         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
6791         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
6792
6793 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
6794
6795         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
6796         Define for 2.4+ kernels.
6797
6798         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
6799         are known to have the vfork syscall.  Don't confuse the CPUs
6800         branch prediction unit by jumping to the return address.
6801
6802         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
6803         support for reiserfs and xfs.
6804
6805         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
6806         XFS link count.
6807         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
6808         and XFS_LINK_MAX.
6809         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
6810
6811 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
6812
6813         * include/libc-symbols.h (attribute_tls_model_ie): Define.
6814         * include/errno.h (errno): Define to __libc_errno in libc.so.
6815         Add attribute_tls_model_ie.
6816         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
6817         Add attribute_tls_model_ie.
6818         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
6819         attribute_tls_model_ie.
6820         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
6821         (h_errno): Define.
6822         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
6823         (_res): Define.
6824         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
6825         attribute_tls_model_ie.
6826         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
6827         __thread.
6828         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
6829         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
6830         __libc_errno in USE___THREAD case.
6831         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6832         Likewise.
6833         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
6834         __attribute__((tls_model (""))).
6835         * configure: Rebuilt.
6836         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
6837
6838 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
6839
6840         * timezone/asia: Update from tzdata2002d.
6841         * timezone/australasia: Likewise.
6842         * timezone/iso3166.tab: Likewise.
6843         * timezone/southamerica: Likewise.
6844         * timezone/zone-tab: Likewise.
6845
6846 2002-10-15  Roland McGrath  <roland@redhat.com>
6847
6848         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
6849         Adjust TCB pointer before calling free, so we get the whole block.
6850
6851 2002-10-14  Roland McGrath  <roland@redhat.com>
6852
6853         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
6854         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
6855         extern using attribute_hidden instead of static, avoids warning.
6856
6857 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
6858
6859         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
6860         * sysdeps/unix/sysv/linux/configure: Rebuilt.
6861
6862 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
6863
6864         * po/sv.po: Update from translation team.
6865
6866 2002-10-12  H.J. Lu  <hjl@gnu.org>
6867
6868         * sunrpc/thrsvc.c (PROCQUIT): New.
6869         (struct rpc_arg): New.
6870         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
6871         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
6872         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
6873         (main): Modified for struct rpc_arg *.
6874
6875 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
6876
6877         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
6878
6879 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
6880
6881         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
6882         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
6883         in ld.so even if __thread is supported.
6884
6885 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
6886
6887         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
6888         Add hack to prevent the compiler from clobbering the signal context.
6889         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
6890         Likewise.
6891         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
6892         Likewise.
6893
6894 2002-10-14  Andreas Jaeger  <aj@suse.de>
6895
6896         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
6897         Guido Guenther <agx@sigxcpu.org>.
6898
6899 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
6900
6901         * po/sk.po: Update from translation team.
6902
6903 2002-09-26  Roland McGrath  <roland@redhat.com>
6904
6905         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
6906         dynamic string tag.
6907         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
6908         DL_DST_LIB based on $(slibdir).
6909
6910 2002-10-13  Roland McGrath  <roland@frob.com>
6911
6912         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
6913
6914         * sysdeps/mach/hurd/getresuid.c: New file.
6915         * sysdeps/mach/hurd/getresgid.c: New file.
6916         * sysdeps/mach/hurd/setresuid.c: New file.
6917         * sysdeps/mach/hurd/setresgid.c: New file.
6918
6919         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
6920         setresgid): Declare them.
6921         * NEWS: Mention it.
6922         * include/unistd.h
6923         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
6924         add libc_hidden_proto.
6925         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
6926         getresuid, getresgid, setresuid, setresgid here.
6927         * Versions.def (libc): Define GLIBC_2.3.2 set.
6928         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
6929         Add libc_hidden_def.
6930         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
6931         * sysdeps/generic/setresgid.c: New file.
6932         * sysdeps/generic/setresuid.c: New file.
6933         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
6934         (sysdep_routines): Don't add getresuid and getresgid here.
6935         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
6936         (sysdep_routines): Don't add setresuid and setresgid here.
6937         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
6938         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
6939         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
6940         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
6941         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
6942         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
6943         * posix/Makefile (routines): Add them all here instead.
6944         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
6945         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
6946         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
6947         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
6948         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
6949         [! __NR_setresuid]: Include generic file.
6950         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
6951         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
6952         [! __NR_setresuid]: Include generic file.
6953         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
6954         Caller is - now, not EXTRA.
6955         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
6956         (setresuid, setresgid, getresuid, getresgid): Likewise.
6957         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
6958         Add these calls here.
6959         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
6960         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
6961         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
6962         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
6963         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
6964         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
6965         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
6966         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
6967         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
6968
6969         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
6970         (sysdep_routines): Add setfsuid and setfsgid here.
6971         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
6972         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
6973         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
6974         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
6975         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
6976         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
6977         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
6978         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
6979
6980         * hurd/errno.c: Renamed to ...
6981         * hurd/errno-loc.c: ... this.
6982         * hurd/Makefile (routines): errno -> errno-loc
6983
6984 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
6985
6986         * po/de.po: Update from translation team.
6987
6988         * MakeTAGS: Add -E flag to xgettext runs.
6989
6990 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
6991
6992         * po/fr.po: Update from translation team.
6993
6994         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
6995         Optimize a bit for use in glibc.
6996
6997 2002-10-12  Roland McGrath  <roland@redhat.com>
6998
6999         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
7000         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
7001
7002 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
7003
7004         * po/sv.po: Update from translation team.
7005
7006 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
7007
7008         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
7009         OP_CONTEXT_NODE.
7010         (regfree): Likewise.
7011         (create_initial_state): Likewise.
7012         (analyze): Remove the substitutions which became useless.
7013         (calc_first): Likewise.
7014         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
7015         epsilon destination.
7016         (duplicate_node_closure): New function.
7017         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
7018         (calc_inveclosure): Likewise.
7019         (calc_eclosure): Likewise.
7020         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
7021         direct invocation of duplicate_node.
7022         (parse): Don't use comma operator in the return to avoid compiler
7023         warning.
7024         (parse_reg_exp): Likewise.
7025         (parse_branch): Likewise.
7026         (parse_expression): Likewise.
7027         (parse_sub_exp): Likewise.
7028         (parse_dup_op): Likewise.
7029         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
7030         which became useless.
7031         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
7032         (create_cd_newstate): Likewise.
7033         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
7034         (re_token_t): Likewise.
7035         (re_dfa_t): Likewise.
7036         (re_node_set_remove): New macro.
7037         * posix/regexec.c (check_matching): Remove the handling
7038         OP_CONTEXT_NODE.
7039         (check_halt_node_context): Likewise.
7040         (proceed_next_node): Likewise.
7041         (pop_fail_stack): Fix the memory leak.
7042         (set_regs): Likewise.
7043         (free_fail_stack_return): New function.
7044         (sift_states_backward): Fix the memory leak.  Remove the handling
7045         OP_CONTEXT_NODE.
7046         (update_cur_sifted_state): Append some if clause to avoid redundant
7047         call.
7048         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
7049         back reference.
7050         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
7051         (check_subexp_limits): Likewise.
7052         (search_subexp): Likewise.
7053         (sift_states_bkref): Likewise.
7054         (transit_state_mb): Likewise.
7055         (transit_state_bkref_loop): Likewise.
7056         (transit_state_bkref_loop): Likewise.
7057         (group_nodes_into_DFAstates): Likewise.
7058         (check_node_accept): Likewise.
7059         (sift_ctx_init): Add initializing.
7060
7061 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
7062
7063         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
7064         __builtin_expect.
7065
7066 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
7067
7068         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
7069         duplicated variable c.
7070
7071         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
7072         if possible.
7073
7074         * sysdeps/unix/sysv/linux/i386/sysdep.h
7075         (INTERNAL_SYSCALL_ERROR_P): New define.
7076         (INTERNAL_SYSCALL_ERRNO): Likewise.
7077
7078         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
7079         Add hack to prevent the compiler from clobbering the signal context.
7080
7081 2002-10-11  Roland McGrath  <roland@redhat.com>
7082
7083         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
7084         Fix typos.
7085
7086         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
7087         * sysdeps/sh/dl-lookupcfg.h: File removed.
7088         * sysdeps/i386/dl-lookupcfg.h: File removed.
7089
7090         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
7091         missing labels and ; from last change.
7092
7093         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
7094         number literals, so they are doubles instead of ints.
7095
7096 2002-10-09  Roland McGrath  <roland@redhat.com>
7097
7098         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
7099         changed from [USE_TLS && HAVE___THREAD].
7100
7101         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
7102         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
7103         * sysdeps/x86_64/dl-machine.h
7104         (elf_machine_type_class, elf_machine_rela): Likewise.
7105         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
7106         Likewise.
7107
7108         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
7109         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
7110         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
7111
7112         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
7113         instead of ___tls_get_addr.
7114         (___tls_get_addr_internal): Add attribute_hidden to decl.
7115
7116         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
7117         _dl_error_catch_tsd.
7118         * elf/rtld.c (startup_error_tsd): New function.
7119         (dl_main): Point _dl_error_catch_tsd at that.
7120         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
7121         use new function pointer instead.
7122         * elf/dl-tsd.c: New file.
7123         * elf/Makefile (routines): Add it.
7124
7125 2002-10-07  Roland McGrath  <roland@redhat.com>
7126
7127         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
7128         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
7129         take _dl_load_lock around calling __writev.
7130
7131         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
7132         (INLINE_SYSCALL): Use that.
7133
7134         * sysdeps/generic/dl-sysdep.h: New file.
7135         * sysdeps/mach/hurd/dl-sysdep.h: New file.
7136         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
7137         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
7138         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
7139         access it directly.
7140         * elf/dl-minimal.c (__errno_location): Removed.
7141         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
7142         Use GOTOFF access for errno.
7143         * sysdeps/unix/sysv/linux/i386/sysdep.h
7144         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
7145
7146         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
7147         Use PC-relative access for errno.
7148         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
7149         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
7150
7151         * include/tls.h: New file.
7152         (USE___THREAD): New macro.
7153         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
7154         libc or libpthread.
7155         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
7156         changed from [USE_TLS && HAVE___THREAD].
7157         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
7158         * sysdeps/unix/i386/sysdep.S: Likewise.
7159         * sysdeps/unix/x86_64/sysdep.S: Likewise.
7160         * include/errno.h: Likewise.
7161         * include/netdb.h: Likewise.
7162         * include/resolv.h: Likewise.
7163
7164         * sysdeps/generic/errno.c: New file.
7165         * csu/Makefile (aux): New variable, list errno.
7166         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
7167         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
7168         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
7169         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
7170         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
7171         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
7172         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
7173         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
7174         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
7175         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
7176         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
7177         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
7178         * sysdeps/unix/alpha/sysdep.S: Likewise.
7179         * sysdeps/generic/start.c: Likewise.
7180         * sysdeps/unix/start.c: Likewise.
7181         * sysdeps/unix/arm/start.c: Likewise.
7182         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
7183         * sysdeps/unix/sparc/start.c: Likewise.
7184         * sysdeps/unix/sysv/irix4/start.c: Likewise.
7185         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
7186
7187         * manual/search.texi (Tree Search Function, Hash Search Function):
7188         Mention search.h clearly.
7189
7190 2002-10-05  Roland McGrath  <roland@redhat.com>
7191
7192         * elf/dl-fxstat64.c: File removed.
7193         * elf/dl-xstat64.c: File removed.
7194         * elf/Makefile (rtld-routines): Remove them.
7195         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
7196         Instead, use strong_alias instead of versioned_symbol in the
7197         !SHLIB_COMPAT case.
7198         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
7199         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
7200
7201         * include/shlib-compat.h
7202         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
7203         [! NOT_IN_libc] (IS_IN_libc): Define it.
7204         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
7205         * elf/Makefile (CPPFLAGS-.os): Likewise.
7206
7207         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
7208         Return the status instead of calling exit.
7209
7210         * Makeconfig (CFLAGS): Prepend -std=gnu99.
7211         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
7212         Remove superfluous rm command, whose @ plus make bugs hid
7213         all these commands from the make output.
7214
7215         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
7216         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
7217         Use that file's contents instead of literal echo's for the prologue.
7218         * include/features.h: Include <gnu/stubs.h> unconditionally.
7219         * include/gnu/stubs.h: New file.
7220
7221 2002-09-30  Roland McGrath  <roland@redhat.com>
7222
7223         * elf/rtld-Rules: New file.
7224         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
7225         $(objpfx)rtld-libc.a): New targets.
7226         (generated): Add them.
7227         (reloc-link): Remove -o $@ from the variable.
7228         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
7229         (distribute): Add rtld-Rules.
7230         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
7231         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
7232         (common-mostlyclean, common-clean): Clean up rtld-* files.
7233         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
7234
7235 2002-10-11  Roland McGrath  <roland@redhat.com>
7236
7237         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
7238         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
7239
7240         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
7241         proper set of no-op insn prefixes.
7242
7243         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
7244
7245 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
7246
7247         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
7248         __pthread_kill_other_threads_np.
7249
7250         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
7251
7252 2002-10-08  Roland McGrath  <roland@redhat.com>
7253
7254         * locale/newlocale.c (__newlocale): If setting all categories to "C",
7255         just return &_nl_C_locobj instead of copying it.
7256         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
7257         * locale/duplocale.c (__duplocale): Likewise.
7258
7259 2002-10-07  Roland McGrath  <roland@frob.com>
7260
7261         * config.h.in (HAVE_I386_SET_GDT): New #undef.
7262         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
7263         * sysdeps/mach/configure: Regenerated.
7264
7265 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
7266
7267         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
7268         Add all necessary register outputs for syscall-clobbered registers.
7269
7270 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
7271
7272         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
7273         Itanium 2 (and Itanium).
7274         Fix unwind directives and make it fit in 80 columns.
7275         * sysdeps/ia64/memset.S: Likewise.
7276         * sysdeps/ia64/memcpy.S: Likewise.
7277         Move jump table to .rodata section.
7278
7279 2002-10-03  Roland McGrath  <roland@frob.com>
7280
7281         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
7282         clobbers to asm.
7283
7284 2002-10-10  Andreas Jaeger  <aj@suse.de>
7285
7286         * sysdeps/x86_64/_mcount.S: Restore correct registers.
7287
7288 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
7289
7290         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
7291
7292 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
7293
7294         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
7295         _dl_allocate_tls_init.  Add rtld_hidden_proto.
7296         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
7297         rtld_hidden_def.
7298         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
7299
7300         * version.h (VERSION): Bump to 2.3.1.
7301
7302         * Make-dist: Add back one of the tar invocations removed before.
7303
7304         * stdlib/Makefile (distribute): Add allocalim.h.
7305
7306         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
7307         (__libc_tsd_address): Use correct variable name.
7308         Patch by Stefan Jones <stefan.jones@multigig.com>.
7309
7310         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
7311         Reported by edwardsg@sgi.com [PR libc/4678].
7312
7313         * Versions.def (libc): Add GLIBC_2.3.1.
7314         (libpthread): Add GLIBC_2.3.1.
7315
7316         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
7317         and __sigtimedwait.
7318         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
7319         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
7320         libc_hidden_def.
7321         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
7322         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
7323
7324         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
7325         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
7326         and make old name an alias.
7327         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
7328         and make old name an alias.
7329         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
7330         __libc_msgsnd.
7331
7332         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
7333         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
7334         __libc_writev.
7335         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
7336         old name an alias.
7337         * sysdeps/posix/readv.c: Likewise
7338         * sysdeps/unix/sysv/aix/readv.c: Likewise.
7339         * sysdeps/unix/sysv/linux/readv.c: Likewise.
7340         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
7341         old name an alias.
7342         * sysdeps/posix/writev.c: Likewise
7343         * sysdeps/unix/sysv/aix/writev.c: Likewise.
7344         * sysdeps/unix/sysv/linux/writev.c: Likewise.
7345
7346         * include/sys/wait.h: Declare __waitid.
7347         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
7348         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
7349         name an alias.
7350         * sysdeps/posix/waitid.c: Likewise.
7351         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
7352
7353         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
7354
7355 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
7356
7357         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
7358         prototypes.
7359         (__MAX_ALLOCA_CUTOFF): Define.
7360         Include allocalim.h.
7361         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
7362         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
7363         host_buffer depending on __libc_use_alloca.
7364         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
7365         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
7366         net_buffer depending on __libc_use_alloca.
7367         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
7368         buf depending on __libc_use_alloca.
7369         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
7370         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
7371         instead of hardcoded constants.
7372         Pass proper size argument to alloca and compute end for wide char
7373         version.
7374         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
7375         instead of hardcoded constants.
7376         * string/strcoll.c (strcoll): Likewise.
7377         * string/strxfrm.c (strxfrm): Likewise.
7378         * sysdeps/posix/readv.c (__readv): Likewise.
7379         * sysdeps/posix/writev.c (__writev): Likewise.
7380         * sysdeps/generic/allocalim.h: New file.
7381
7382 2002-10-08  Roland McGrath  <roland@redhat.com>
7383
7384         * configure.in (aux_missing warning): Change "too old" to
7385         "incompatible versions", since for autoconf it's "too new" right now.
7386         * configure: Regenerated.
7387
7388         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
7389         one found doesn't work on our configure.in.
7390         * configure: Regenerated.
7391         * config.make.in (AUTOCONF): New substituted variable.
7392         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
7393         (autoconf-it): ... here, use that instead of defining conditionally.
7394         Use $(AUTOCONF) instead of literal autoconf.
7395         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
7396         with this condition.
7397         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
7398
7399 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
7400
7401         * Make-dist (dist): Cleanup a bit.  We are not interested in the
7402         14 char filename limit anymore.  Remove intermediate files and
7403         symlinks.
7404
7405 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
7406
7407         * po/sk.po: Update from translation team.
7408         * po/tr.po: Likewise.
7409         * po/gl.po: Likewise.
7410
7411 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
7412
7413         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
7414
7415 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
7416
7417         * version.h (RELEASE): Change to stable.
7418
7419 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
7420
7421         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
7422         __syscall_exit_group): New prototypes.
7423
7424 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
7425
7426         * glibc 2.3 released.
7427
7428
7429 See ChangeLog.13 for earlier changes.