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