* sysdeps/m68k/m68020/bits/atomic.h: New file.
[glibc/pb-stable.git] / ChangeLog
blob0f380b00604fa912104099f977c3e5e46ac5de55
1 2003-03-22  Andreas Schwab  <schwab@suse.de>
3         * sysdeps/m68k/m68020/bits/atomic.h: New file.
4         * sysdeps/m68k/m68020/atomicity.h: Removed.
6 2003-03-22  Alexandre Oliva  <aoliva@redhat.com>
8         * sysdeps/mips/elf/ldsodefs.h: Add mips-specific elf64 relocation
9         data structures and macros.  Protect from multiple inclusion.
11         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Fix harmless
12         typo in #if test.
14 2003-03-21  Andreas Jaeger  <aj@suse.de>
16         * sysdeps/i386/fpu/libm-test-ulps: Update.
18         * math/libm-test.inc (tgamma_test): Recompute some constants with
19         36 digits precision.
20         (lgamma_test): Likewise.
21         (ccos_test): Likewise.
22         (ccosh_test): Likewise.
23         (clog10_test): Likewise.
24         (csin_test): Likewise.
25         (csinh_test): Likewise.
26         (ctan_test): Likewise.
27         (ctanh_test): Likewise.
29 2003-03-19  Jakub Jelinek  <jakub@redhat.com>
31         * sysdeps/sparc/sparc64/fpu/libm-test-ulps: Regenerated.
33 2003-03-21  Roland McGrath  <roland@redhat.com>
35         * sysdeps/i386/i486/bits/atomic.h (atomic_bit_set): Use "ir"
36         constraint to permit non-constant BIT argument.
37         (atomic_bit_test_set): Likewise.
38         * sysdeps/x86_64/bits/atomic.h (atomic_bit_test_set): Likewise.
39         (atomic_bit_set): Likewise.  Use 1UL in case that BIT might be >= 32.
40         For quadword case, use "i" constraint if __builtin_constant_p and < 32
41         or "r" constraint otherwise.
43         * configure.in: Move AC_PROG_CC and other program-finding before all
44         the version checks.
45         * configure: Regenerated.
47 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
49         * sysdeps/mips/mips64/memcpy.S: Fix porting bug that broke
50         unaligned copying of 8-15 bytes.  From Chris Demetriou
51         <cgd@broadcom.com>.  Fix label names.
52         * sysdeps/mips/mips64/memset.S: Fix label names.  Make similar
53         change as to memcpy.S.
54         * sysdeps/mips/memcpy.S: Formatting changes.
55         * sysdeps/mips/memset.S: Likewise.
57 2003-03-21  Roland McGrath  <roland@redhat.com>
59         * sysdeps/arm/sysdep.h (CALL_MCOUNT): Add trailing semicolon.
61 2003-03-21  Alexandre Oliva  <aoliva@redhat.com>
63         * sysdeps/mips/mips64/memcpy.S, sysdeps/mips/mips64/memset.S: New.
64         * sysdeps/mips/memcpy.S, sysdeps/mips/memset.S: Update comments.
66 2003-03-21  Roland McGrath  <roland@redhat.com>
68         * sysdeps/i386/i486/bits/atomic.h
69         (__arch_compare_and_exchange_val_64_acq): Rewrite abort-calling
70         version of the macro to avoid compile-time warnings.
71         [! __PIC__] (__arch_compare_and_exchange_64_acq): Rename to above.
72         (atomic_exchange_and_add, atomic_add): Fix name and usage of it.
73         (atomic_increment, atomic_decrement): Likewise.
75 2003-03-21  Ulrich Drepper  <drepper@redhat.com>
77         * sysdeps/x86_64/bits/atomic.h: Don't use matching memory constraints.
78         * sysdeps/i386/i486/bits/atomic.h: Likewise.
80 2003-03-21  Roland McGrath  <roland@redhat.com>
82         * include/atomic.h (atomic_compare_and_exchange_bool_acq): Typo fix.
84 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
86         * include/atomic.h: Define atomic_compare_and_exchange_val_acq,
87         atomic_compare_and_exchange_val_rel,
88         atomic_compare_and_exchange_bool_acq, and
89         atomic_compare_and_exchange_bool_rel instead of
90         atomic_compare_and_exchange_acq and atomic_compare_and_exchange_rel.
91         * sysdeps/i386/i486/bits/atomic.h: Define
92         __arch_compare_and_exchange_val_*_acq instead of
93         __arch_compare_and_exchange_*_acq.
94         * sysdeps/x86_64/bits/atomic.h: Likewise.
95         * sysdeps/ia64/bits/atomic.h: Define
96         __arch_compare_and_exchange_bool_*_acq instead of
97         __arch_compare_and_exchange_*_acq.
98         * sysdeps/powerpc/bits/atomic.h: Likewise.
99         * sysdeps/s390/bits/atomic.h: Likewise.
100         * gmon/mcount.c: Adjust for new form of compare&exchange macros.
101         * malloc/set-freeres.c: Likewise.
102         * nscd/cache.c: Likewise.
103         * stdlib/cxa_finalize.c: Likewise.
104         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
106 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
108         * sysdeps/mips/bits/setjmp.h: n32 has only 6 call-saved fpregs.
109         * sysdeps/mips/mips64/setjmp_aux.c (__sigsetjmp_aux): Adjust.
110         * sysdeps/mips/mips64/__longjmp.c (__longjmp): Likewise.
112         * sysdeps/unix/sysv/linux/mips/pread.c: Don't break up offset
113         into high and low halves on n64.
114         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
115         * sysdeps/unix/sysv/linux/mips/pwrite.c: Likewise.
116         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
118 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
120         * include/atomic.h (atomic_decrement_if_positive): Adjust for the
121         correct atomic_compare_and_exchange_acq semantics.
123 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
125         * sysdeps/mips/ieee754.h: Remove excess #endif.
127 2003-03-20  Roland McGrath  <roland@redhat.com>
129         * sysdeps/powerpc/bits/atomic.h (atomic_exchange): Remove unused
130         variable.  Remove superfluous memory clobber.
132         * include/atomic.h: Syntax braino fix.
134         * posix/tst-nice.c (do_test): Use %m formats instead of printing errno
135         in decimal.  Don't bail if niced at start.  Just check that nice call
136         bumps the total at all.
138 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
140         * sysdeps/mips/bits/setjmp.h: Store all N32 and N64 registers,
141         including pc, gp, sp and fp, as long long.
142         * sysdeps/mips/mips64/setjmp.S: Pass gp to __sigsetjmp_aux.
143         * sysdeps/mips/mips64/setjmp_aux.c: Adjust type of arguments.
144         Add gp argument, and set gp in the jmpbuf to it.
145         * sysdeps/mips/setjmp_aux.c: Revert to o32-only.
147 2003-03-20  Ulrich Drepper  <drepper@redhat.com>
149         * include/atomic.h: Define atomic_exchange and
150         atomic_decrement_if_positive if not already defined.  Add some
151         __builtin_expect.
152         * sysdeps/i386/i486/bits/atomic.h: Define atomic_exchange.
153         * sysdeps/x86_64/bits/atomic.h: Likewise.
154         * sysdeps/ia64/bits/atomic.h: Pretty printing.  Define atomic_exchange.
155         * sysdeps/powerpc/bits/atomic.h: Pretty printing.  Define
156         atomic_exchange, atomic_exchange_and_add, and
157         atomic_decrement_if_positive
159 2003-03-20  Alexandre Oliva  <aoliva@redhat.com>
161         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: Sign-extend
162         with a single instruction.
164         * sysdeps/mips/dl-machine.h (ELF_MIPS_GNU_GOT1_MASK): Define
165         properly for n64.
166         (elf_machine_runtime_setup): Cast link_map pointer to Elf Addr
167         type.
168         (elf_machine_rel, elf_machine_rel_relative): Cast symidx to Elf
169         Word before comparing with gotsym.  Take reloc_addr argument as
170         void*.  Remove the code added for the compiler to drop any
171         alignment assumptions.
173 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
175         * Makefile (distribute): Add include/atomic.h and bits/atomic.h.
176         * include/atomic.h: New file.
177         * sysdeps/i386/i486/bits/atomic.h: New file.
178         * sysdeps/x86_64/bits/atomic.h: New file.
179         * sysdeps/s390/bits/atomic.h: New file.
180         * sysdeps/sh/bits/atomic.h: New file.
181         * sysdeps/ia64/bits/atomic.h: New file.
182         * sysdeps/powerpc/bits/atomic.h: New file.
183         * sysdeps/generic/bits/atomic.h: New file.
184         * sysdeps/i386/i486/atomicity.h: Removed.
185         * sysdeps/x86_64/atomicity.h: Removed.
186         * sysdeps/s390/s390-32/atomicity.h: Removed.
187         * sysdeps/s390/s390-64/atomicity.h: Removed.
188         * sysdeps/ia64/atomicity.h: Removed.
189         * sysdeps/powerpc/powerpc32/atomicity.h: Removed.
190         * sysdeps/powerpc/powerpc64/atomicity.h: Removed.
191         * elf/dl-profile.c: Use atomic.h instead of atomicity.h.  Adjust
192         use of macros from atomicity.h to new names and semantics.
193         * gmon_mcount.c: Likewise.
194         * malloc/set-freeres.c: Likewise.
195         * nscd/cache.c: Likewise.
196         * stdlib/cxa_finalize.c: Likewise.
197         * sysdeps/unix/sysv/linux/getsysstats.c: Likewise.
199 2003-03-19  Alexandre Oliva  <aoliva@redhat.com>
201         * sysdeps/mips/ieee754.h: New file, suitable to replace both
202         ../ieee754/ieee754.h and ../ieee754/ldbl-128/ieee754.h, kept
203         mips-specific for now.
205 2003-03-19  Ulrich Drepper  <drepper@redhat.com>
207         * stdlib/strtod.c (INTERNAL): While eating trailing zeros handle
208         hexdigits correctly.  Reported by Fred Tydeman <tydeman@tybor.com>.
209         * stdlib/tst-strtod.c: Add test for the bug.
211         * posix/tst-nice.c (do_test): Remove invalid of return value.
212         Don't run test if initial level != 0.
214 2003-03-19  Amos Waterland  <apw@us.ibm.com>
216         * posix/tst-nice.c: New file.
217         * posix/Makefile (tests): Add tst-nice.
219 2003-03-18  Roland McGrath  <roland@redhat.com>
221         * abilist: New directory of libfoo.abilist files maintained using
222         scripts/merge-abilist.awk and "make update-abi" rules.
223         * Makefile (distribute): Add abilist/*.abilist.
224         * Makerules [$(build-shared) = yes] [$(subdir)] (tests):
225         Depend on check-abi.
227         * configure.in: Move $critic_missing check after all AC_CHECK_PROG_VER.
228         * configure: Regenerated.
230         * sysdeps/unix/sysv/linux/syscalls.list (posix_fadvise64): Fix name.
232 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
234         * sysdeps/posix/sysconf.c (__sysconf): Handle _SC_MONOTONIC_CLOCK
235         correctly.
237 2003-03-18  Steven Munroe  <sjmunroe@us.ibm.com>
239         * sysdeps/powerpc/powerpc64/memcpy.S: New file.
241 2003-03-18  Ulrich Drepper  <drepper@redhat.com>
243         * Versions.def: Add GLIBC_2.3.3 for libpthread.
245 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
247         * sysdeps/generic/libc-start.c [!SHARED &&
248         !LIBC_START_MAIN_AUXVEC_ARG]: Compute beginning of auxvec correctly.
250 2003-03-17  Roland McGrath  <roland@redhat.com>
252         * include/ctype.h: Revert last change.
254 2003-03-17  Ulrich Drepper  <drepper@redhat.com>
256         * argp/tst-argp1.c: Use test-skeleton.c.
257         * locale/tst-C-locale.c: Likewise.
259 2003-03-17  Alexandre Oliva  <aoliva@redhat.com>
261         * sysdeps/mips/mips64/Implies: Move wordsize-64 to...
262         * sysdeps/mips/mips64/n64/Implies: New file.
263         * sysdeps/mips/mips64/n64/Makefile: New file.
264         * sysdeps/mips/mips64/n64/el/bits/endian.h: New file.
265         * sysdeps/mips/mips64/n32/Implies: New file.
266         * sysdeps/mips/mips64/n32/Makefile: New file.
267         * sysdeps/mips/mips64/n32/el/bits/endian.h: New file.
268         * sysdeps/unix/mips/mips64/n32/sysdep.h: New file.
269         * sysdeps/unix/mips/mips64/n64/sysdep.h: New file.
270         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: New file.
271         * sysdeps/unix/sysv/linux/mips/mips64/n64/glob64.c: New file.
272         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: New file.
273         * sysdeps/unix/sysv/linux/mips/mips64/ldconfig.h: New file.
274         * sysdeps/unix/sysv/linux/mips/mips64/llseek.c: New file.
275         * sysdeps/unix/sysv/linux/mips/mips64/recv.c: New file.
276         * sysdeps/unix/sysv/linux/mips/mips64/send.c: New file.
277         * sysdeps/unix/sysv/linux/mips/mips64/syscall.S: New file.
278         * sysdeps/unix/sysv/linux/mips/mips64/syscalls.list: New file.
279         * sysdeps/unix/sysv/linux/mips/mips64/umount.c: New file.
280         * sysdeps/unix/sysv/linux/mips/mips64/n64/ioctl.S: New file.
282         * sysdeps/unix/sysv/linux/configure.in (libc_cv_slibdir): Use
283         lib64 for mips64/n64 and lib32 for mips64/n32.
284         (ldd_rewrite_script): Needed for all mips64 configurations.
285         * sysdeps/unix/sysv/linux/configure: Rebuilt.
286         * sysdeps/unix/sysv/linux/mips/mips64/ldd-rewrite.sed: New file.
287         * sysdeps/unix/sysv/linux/mips/mips64/Dist: New file.
289         * sysdeps/mips/machine-gmon.h (MCOUNT): Define for N32 and N64 as
290         well.
292         * sysdeps/unix/sysv/linux/mips/configure.in: New.  Pre-process
293         asm/unistd.h into asm-unistd.h.
294         * sysdeps/unix/sysv/linux/mips/configure: Generated.
295         * sysdeps/unix/sysv/linux/mips/Makefile: Do custom processing
296         of syscall list.
297         * sysdeps/unix/sysv/linux/mips/sys/syscall.h: New file.
298         * sysdeps/unix/sysv/linux/mips/clone.S: Don't include
299         asm/unistd.h.
301         * sysdeps/unix/sysv/linux/mips/sys/ptrace.h: New file.
302         * sysdeps/unix/sysv/linux/mips/ptrace.c: New file.  Use long
303         long type for registers on n32.
305         * sysdeps/mips/bits/wordsize.h: New file, appropriate for all
306         3 ABIs.
307         * sysdeps/mips/mips64/gmp-mparam.h: New file.  Define
308         BITS_PER_LONGINT to __WORDSIZE, to match all 3 ABIs.
309         * sysdeps/mips/setjmp_aux.c (STRINGXP, REGS, PTRS): New macros.
310         (__sigsetjmp_aux): Use them.  Adjust for all 3 ABIs.
311         * sysdeps/mips/elf/start.S: Adjust for all 3 ABIs.
312         * sysdeps/unix/mips/brk.S: Likewise.
313         * sysdeps/unix/mips/sysdep.S: Likewise.
314         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
315         * sysdeps/mips/bits/setjmp.h (__jmp_buf): Likewise.
316         * sysdeps/mips/sys/ucontext.h: Likewise.
317         * sysdeps/unix/sysv/linux/mips/sys/profcs.h: Likewise.
318         * sysdeps/unix/sysv/linux/mips/sys/ucontext.h: Likewise.
319         * sysdeps/unix/sysv/linux/mips/kernel_stat.h: Likewise.
320         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
321         * sysdeps/mips/mips64/bsd-setjmp.S: Likewise.
322         * sysdeps/mips/mips64/setjmp.S: Likewise.
323         * sysdeps/mips/mips64/bits/setjmp.h: Deleted, obsolete.
324         * sysdeps/mips/mips64/soft-fp/sfp-machine.h: Use long long for
325         64-bit types.
327 2003-03-16  Ulrich Drepper  <drepper@redhat.com>
329         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Define tv here,
330         not at function level.
331         * sysdeps/unix/clock_gettime.c (HANDLE_REALTIME): Likewise.
333 2003-03-15  Roland McGrath  <roland@redhat.com>
335         * nis/nss_nis/nis-hosts.c (internal_gethostbyname2_r): int -> size_t
336         * nis/nss_nis/nis-network.c (_nss_nis_getnetbyname_r): Likewise.
337         * nis/nss_nis/nis-alias.c (_nss_nis_getaliasbyname_r): Likewise.
338         * nis/nis_table.c (__create_ib_request): Likewise.
340         * posix/fnmatch_loop.c: Add casts for signedness.
341         * nss/nss_files/files-hosts.c: Likewise.
342         * nscd/nscd_getpw_r.c (nscd_getpw_r): Likewise.
343         * gmon/gmon.c (write_call_graph): Use u_long for FROM_LEN.
344         * nscd/nscd_getgr_r.c (nscd_getgr_r): Use nscd_ssize_t for CNT.
346         * configure.in (libc_cv_visibility_attribute): Use AC_TRY_COMMAND,
347         get errors into the log file.
348         (libc_cv_broken_visibility_attribute): Likewise.
349         (libc_cv_broken_alias_attribute): Likewise.
350         (libc_cv_asm_weak_directive): Likewise.
351         (libc_cv_need_minus_P): Likewise.
352         (libc_cv_dot_text): Likewise.
353         (libc_cv_asm_global_directive): Likewise.
354         (libc_cv_asm_type_prefix): Likewise.
355         * configure: Regenerated.
357         * nscd/cache.c (cache_search): Give first arg type `request_type'.
358         * nscd/nscd.h: Update decl.
360         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add casts for signedness.
361         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
362         * elf/dl-close.c (_dl_close): Likewise.
363         * sysdeps/unix/sysv/linux/powerpc/chown.c (__chown): int -> size_t
364         * io/fts.c (fts_build): Likewise.
365         * elf/cache.c (add_to_cache): Likewise.
366         * locale/programs/locarchive.c (show_archive_content): Likewise.
368         * posix/fnmatch.c (fnmatch): Tweak __builtin_expect use.
370         * include/ctype.h (__ctype_b_loc): Tweak type punning to make gcc 3.3
371         happy.
372         (__ctype_toupper_loc, __ctype_tolower_loc): Likewise.
374 2003-03-15  Ulrich Drepper  <drepper@redhat.com>
376         * sysdeps/unix/sysv/linux/ia64/system.c: Use the generic Linux
377         code for most parts.
379 2003-03-15  Roland McGrath  <roland@redhat.com>
381         * sysdeps/unix/sysv/linux/i386/system.c: Moved to ...
382         * sysdeps/unix/sysv/linux/system.c: ... here.
383         (FORK): Don't #define if already #define'd.
384         * sysdeps/unix/sysv/linux/s390/system.c: File removed.
385         * sysdeps/unix/sysv/linux/kernel-features.h [__powerpc__]:
386         (__ASSUME_CLONE_THREAD_FLAGS): Define for kernel >= 2.5.64.
388         * dlfcn/tst-dlinfo.c: New file.
389         * dlfcn/Makefile (tests): Add tst-dlinfo.
390         ($(objpfx)tst-dlinfo): New target.
392         * dlfcn/dlinfo.c: New file.
393         * dlfcn/Makefile (libdl-routines): Add it.
394         * dlfcn/Versions (libdl: GLIBC_2.3.3): Add dlinfo.
395         * dlfcn/dlfcn.h [__USE_GNU]: Declare dlinfo.
396         [__USE_GNU] (RTLD_DI_*): New enum constants.
397         [__USE_GNU] (Dl_serpath, Dl_serinfo): New types.
398         * elf/dl-load.c (cache_rpath): New inline function.
399         (_dl_map_object): Use it.
400         (_dl_rtld_di_serinfo): New function.
401         * sysdeps/generic/ldsodefs.h: Declare it.
402         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
404         * sysdeps/powerpc/elf/libc-start.c (AUX_VECTOR_INIT): Define it.
405         (LIBC_START_MAIN, LIBC_START_MAIN_AUXVEC_ARG, MAIN_AUXVEC_ARG)
406         (INIT_MAIN_ARGS): Define, and #include <sysdeps/generic/libc-start.c>.
407         (__libc_start_main): Just call the generic one for most of the work.
409         * sysdeps/generic/libc-start.c [LIBC_START_MAIN]: If defined, define a
410         static function by that name instead of BP_SYM (__libc_start_main).
411         [LIBC_START_MAIN_AUXVEC_ARG]: Take AUXVEC as argument.
412         [MAIN_AUXVEC_ARG]: Pass 4th argument to MAIN.
413         [INIT_MAIN_ARGS]: Give INIT the same args as MAIN.
415         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_PLATFORM_AUXV]:
416         Use this macro for extra AT_* cases.
417         * sysdeps/unix/sysv/linux/powerpc/dl-sysdep.c (DL_PLATFORM_AUXV):
418         New macro, guts from ...
419         (__aux_init_cache): ... here, function removed.
420         (DL_PLATFORM_INIT): Don't define this.
422         * sysdeps/powerpc/powerpc32/memset.S: Put __cache_line_size in bss.
423         * sysdeps/powerpc/powerpc64/memset.S: Likewise.
425         * Versions.def (libthread_db): Add GLIBC_2.3.3 set.
427 2003-03-14  Roland McGrath  <roland@redhat.com>
429         * dlfcn/dlerror.c (dlerror): If objname is "", don't put ": " after it.
431 2003-03-14  Jakub Jelinek  <jakub@redhat.com>
433         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Fix a typo.
435         * sysdeps/unix/sysv/linux/sparc/sparc64/pause.c: Include
436         sysdeps/posix/pause.c instead of sysdeps/unix/common/pause.c.
438 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
440         * sysdeps/mips/fpu/bits/mathdef.h: New.
441         (__NO_LONG_DOUBLE_MATH): Define for o32.
443         * sysdeps/mips/sys/asm.h: Formatting changes.
444         (PTR, PTRSIZE, PTRLOG): Adjust for all 3 ABIs.
445         (CPADD): Define for all of them.
446         (SETUP_GP, SETUP_GPX, SETUP_GPX_L, SAVE_GP, SETUP_GP64,
447         SETUP_GPX64, SETUP_GPX64_L, RESTORE_GP64, USE_ALT_CP,
448         NARGSAVE): Define per ABI spec.
449         (END): Don't redefine.
450         (LONG_SLL, LONG_SLLV, LONG_SRL, LONG_SRLV, LONG_SRA,
451         LONG_SRAV): Remove duplicate definitions.
452         (PTR_ADD, PTR_ADDI, PTR_ADDU, PTR_ADDIU, PTR_SUB, PTR_SUBI,
453         PTR_SUBU, PTR_SUBIU, PTR_L, PTR_S, PTR_SLL, PTR_SLLV, PTR_SRL,
454         PTR_SRLV, PTR_SRA, PTR_SRAV, PTR_SCALESHIFT): Define for n32.
455         (PTR_LA): Define for all 3 ABIs.
457         * sysdeps/mips/dl-machine.h: Include sys/asm.h.
458         (elf_machine_matches_host): Prevent linking of o32 and n32
459         together.
460         (elf_machine_dynamic): Document assumption on $gp.
461         (STRINGXP, STRINGXV, STRINGV_): New macros.
462         (elf_machine_load_address): Use them to stringize PTR_LA and
463         PTR_SUBU.
464         (ELF_DL_FRAME_SIZE, ELF_DL_SAVE_ARG_REGS,
465         ELF_DL_RESTORE_ARG_REGS, IFABIO32): New macros used in...
466         (_dl_runtime_resolve): Adjust it for all 3 ABIs.
467         (__dl_runtime_resolve): Cast the symtab initializer to the
468         right type.
469         (RTLD_START): Use it.  Adjust it for all 3 ABIs.
470         (elf_machine_rel): Mark as always_inline in RTLD_BOOTSTRAP.
471         Handle 64-bit R_MIPS_REL composite relocation and accept
472         R_MIPS_64 relocations to shift addend size to 64 bits.
473         Document assumption regarding local GOT entries.  Document
474         backward-compatibility departing from the ABI behavior in
475         applying relocations that reference section symbols, no longer
476         used.  Support relocations to mis-aligned offsets.
477         * sysdeps/mips/mips64/dl-machine.h: Deleted, obsolete.
479         * sysdeps/unix/sysv/linux/mips/readelflib.c: New file.
481         * sysdeps/unix/sysv/linux/mips/kernel_sigaction.h
482         (_KERNEL_NSIG_BPW): Define in terms of _MIPS_SZLONG.
483         * sysdeps/unix/sysv/linux/mips/sigaction.c: Define restore and
484         restore_rt functions.  Use them.
486         * sysdeps/unix/sysv/linux/mips/sys/tas.h (_test_and_set): Don't
487         .set mips2 on new abis.
489 2003-03-13  Ulrich Drepper  <drepper@redhat.com>
491         * posix/getconf.c: Recognize POSIX2_SYMLINKS.
492         * sysdeps/generic/bits/confname.h: Define _PC_2_SYMLINKS.
493         * sysdeps/posix/fpathconf.c: Handle _PC_2_SYMLINKS.
494         * sysdeps/posix/pathconf.c: Likewise.
495         * sysdeps/unix/sysv/linux/fpathconf.c: Likewise.
496         * sysdeps/unix/sysv/linux/pathconf.c: Likewise.
497         * sysdeps/unix/sysv/linux/pathconf.h: Define statfs_symlinks.
499         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define some more magic
500         words.
502 2003-03-14  Alexandre Oliva  <aoliva@redhat.com>
504         * include/gmp.h: Include/gmp-mparam.h.
505         * stdlib/strtod.c: Include gmp-mparam.h before gmp.h and
506         gmp-impl.h.
508         * elf/dl-conflict.c: Don't compile _dl_resolve_conflicts if
509         ELF_MACHINE_NO_RELA is set.
510         * elf/rtld.c (dl_main): No prelink support for REL-only.
512         * sysdeps/generic/ldconfig.h (FLAG_MIPS64_LIBN32,
513         FLAG_MIPS64_LIBN64): Define.
514         * elf/cache.c (print_entry): Handle mips64 n32 and n64.
516         * sysdeps/mips/memcpy.S: Map t0-3 to a4-7 on new abis.
517         * sysdeps/mips/memset.S: Likewise.
518         * sysdeps/mips/sys/regdef.h: Alias a4-7 or t0-3 to $8-11
519         depending on the ABI.
521         * sysdeps/mips/atomicity.h (exchange_and_add, atomic_add):
522         Don't .set mips2 on new abi.
523         (compare_and_swap): Likewise.  Support 64-bit longs on n64.
525         * stdlib/fpioconst.h: Include gmp.h with angle brackets.
527 2003-03-13  Roland McGrath  <roland@redhat.com>
529         * elf/dl-load.c (_dl_map_object_from_fd): Bail if no PT_LOAD phdrs
530         found.  Reported by Alexandre Oliva <aoliva@redhat.com>.
532 2003-03-13  Alexandre Oliva  <aoliva@redhat.com>
534         * stdio-common/_itoa.c (_itoa_base_table): Make 64-bit
535         literals long long.
536         * stdlib/fpioconst.c: Likewise.
537         * stdlib/strtod.c: Likewise.
539         * sysdeps/mips/add_n.S: Use L macro for local labels.
540         * sysdeps/mips/addmul_1.S: Likewise.
541         * sysdeps/mips/lshift.S: Likewise.
542         * sysdeps/mips/memcpy.S: Likewise.
543         * sysdeps/mips/memset.S: Likewise.
544         * sysdeps/mips/mul_1.S: Likewise.
545         * sysdeps/mips/rshift.S: Likewise.
546         * sysdeps/mips/sub_n.S: Likewise.
547         * sysdeps/mips/submul_1.S: Likewise.
548         * sysdeps/mips/mips64/add_n.S: Likewise.
549         * sysdeps/mips/mips64/addmul_1.S: Likewise.
550         * sysdeps/mips/mips64/lshift.S: Likewise.
551         * sysdeps/mips/mips64/mul_1.S: Likewise.
552         * sysdeps/mips/mips64/rshift.S: Likewise.
553         * sysdeps/mips/mips64/sub_n.S: Likewise.
554         * sysdeps/mips/mips64/submul_1.S: Likewise.
555         * sysdeps/unix/mips/sysdep.h: Define L() according to ABI
556         conventions.  Define END as in sys/asm.h.
557         * sysdeps/unix/mips/sysdep.S: Likewise.
558         * sysdeps/unix/mips/wait.S: Likewise.
559         * sysdeps/unix/sysv/linux/mips/clone.S: Likewise.
561         * sysdeps/ieee754/dbl-64/dbl2mpn.c (__mpn_extract_double):
562         Cast shifted values that may be too narrow to mp_limb_t.
563         * sysdeps/ieee754/dbl-64/mpn2dbl.c (__mpn_construct_double):
564         Likewise.
565         * sysdeps/ieee754/flt-32/mpn2flt.c (__mpn_construct_float):
566         Likewise.
567         * sysdeps/ieee754/ldbl-128/ldbl2mpn.c
568         (__mpn_extract_long_double): Likewise.
569         * sysdeps/ieee754/ldbl-128/mpn2ldbl.c
570         (__mpn_construct_long_double): Likewise.
571         * sysdeps/ieee754/ldbl-96/ldbl2mpn.c
572         (__mpn_extract_long_double): Likewise.
573         * sysdeps/ieee754/ldbl-96/mpn2ldbl.c
574         (__mpn_construct_long_double): Likewise.
576 2003-03-13  Roland McGrath  <roland@redhat.com>
578         * elf/Makefile ($(objpfx)librtld.mk): Tweak regexp so that one-line
579         entries in the map file match too.
581 2003-03-13  Guido Guenther  <agx@sigxcpu.org>
583         * sysdeps/unix/sysv/linux/mips/clone.S: introduce and use local
584         label .Lthread_start since current binutils don't allow branches
585         to globally visible symbols.
587 2003-03-13  Jakub Jelinek  <jakub@redhat.com>
589         * sysdeps/unix/sysv/linux/ia64/sysdep.h (BREAK_INSN_1, BREAK_INSN,
590         ASM_OUTARGS_0, ASM_OUTARGS_1, ASM_OUTARGS_2, ASM_OUTARGS_3,
591         ASM_OUTARGS_4, ASM_OUTARGS_5, ASM_OUTARGS_6): Define.
592         (INTERNAL_SYSCALL, INLINE_SYSCALL): Use it.  Make syscall arguments
593         clobbered by the syscall.
594         (ASM_ARGS_1, ASM_ARGS_2, ASM_ARGS_3, ASM_ARGS_4, ASM_ARGS_5,
595         ASM_ARGS_6): Change constraints from r to index of corresponding
596         output register.
597         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Swap
598         ptid and ctid to match kernel.
599         * sysdeps/unix/sysv/linux/ia64/system.c (FORK): Likewise.
601 2003-03-12  Steven Munroe  <sjmunroe@us.ibm.com>
603         * sysdeps/powerpc/powerpc64/elf/configure.in: Remove
604         AC_DEFINE(PI_STATIC_AND_HIDDEN).  Not supported for PowerPC64.
605         * sysdeps/powerpc/powerpc64/elf/configure: Regenerated.
607 2003-03-11  Roland McGrath  <roland@redhat.com>
609         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela):
610         Check SYM_MAP rather than SYM as definedness check.
611         Handle R_PPC64_ADDR32, R_PPC64_ADDR30, and R_PPC64_REL64 relocs.
612         Don't handle R_PPC64_REL24 reloc.
613         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
615         * sysdeps/powerpc/powerpc64/dl-machine.h
616         [USE_TLS] (elf_machine_type_class): Match all the TLS relocs in a
617         block, so we cover all the TPREL16* flavors without 6 ||s.
618         [USE_TLS] (elf_machine_tprel): New function.
619         (elf_machine_rela) [USE_TLS]: Use elf_machine_tprel for TPREL64 reloc,
620         and handle TPREL16 relocs too.  Return rather than break for DTPREL64.
621         Mostly from Steven Munroe <sjmunroe@us.ibm.com>.
623 2003-03-11  Ralf Baechle  <ralf@linux-mips.org>
625         * sysdeps/unix/sysv/linux/mips/clone.S (__thread_start): Use jal
626         instead of jalr to invoke subroutine so restoring the $gp register
627         will work properly.
629 2003-03-11  Martin Schwidefsky  <schwidefsky@de.ibm.com>
631         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread64): Define
632         to __NR_pread if not defined.
633         (__NR_pwrite64): Define to __NR_pwrite if not defined.
635 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
637         * sysdeps/unix/sysv/linux/ia64/system.c: New file.
638         * sysdeps/unix/sysv/linux/kernel-features.h
639         (__ASSUME_CLONE_THREAD_FLAGS): Define for IA-64 and s390* with
640         kernel >= 2.5.64.
642 2003-03-11  Jakub Jelinek  <jakub@redhat.com>
644         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): If CNT == 1,
645         allocate space even for the trailing '/'.
646         Reported by John Reiser <jreiser@BitWagon.com>.
648         * sysdeps/unix/sysv/linux/ia64/sysdep.h (LOAD_ARGS_6, ASM_ARGS_6,
649         ASM_CLOBBERS_6): Define.
650         (ASM_CLOBBERS_5): Use ASM_CLOBBERS_6.
651         * sysdeps/unix/sysv/linux/ia64/clone2.S (__clone2): Reorder arguments
652         to match IA-32 order.
653         * sysdeps/unix/sysv/linux/i386/clone.S: Fix comment.
655 2003-03-10  Steven Munroe  <sjmunroe@us.ibm.com>
657         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S: Don't clobber R7.
658         Copy extra params for NPTL to registers used in clone syscall.
660 2003-03-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
662         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Correct system
663         call names for pread and pwrite.
665 2003-03-10  Roland McGrath  <roland@redhat.com>
667         * dlfcn/Makefile (libdl-routines): Add dladdr1.
668         * dlfcn/dladdr1.c: New file.
669         * dlfcn/dlfcn.h [__USE_GNU]: Declare dladdr1.
670         [__USE_GNU] (RTLD_DL_SYMENT, RTLD_DL_LINKMAP): New enum constants.
671         * elf/dl-addr.c (_dl_addr): Take new args, a struct link_map ** and
672         a const ElfNN_Sym ** to fill in.
673         * include/dlfcn.h: Update decl.  Include <link.h>.
674         * dlfcn/dladdr.c (dladdr): Update caller.
675         * malloc/mtrace.c (tr_where): Likewise.
676         * sysdeps/generic/elf/backtracesyms.c: Likewise.
677         * sysdeps/generic/elf/backtracesymsfd.c: Likewise.
678         * dlfcn/Versions (libdl: GLIBC_2.3.3): New set, add dladdr1.
679         * Versions.def (libdl): Define GLIBC_2.3.3 set.
681         * sysdeps/unix/make-syscalls.sh: Generate $(compile-syscall) for
682         assembler command.
683         * sysdeps/unix/Makefile (compile-syscall): New variable.
684         Pass -g0 to compiler for assembling syscall stubs from stdin.
686         * sysdeps/i386/sysdep.h [HAVE_CPP_ASM_DEBUGINFO]
687         (STABS_CURRENT_FILE, STABS_CURRENT_FILE1, STABS_FUN, STABS_FUN_END):
688         Define these to do nothing.
690         * configure.in: New check for -g on .S files.
691         * configure: Regenerated.
692         * config.make.in (have-cpp-asm-debuginfo): New variable.
693         * config.h.in (HAVE_CPP_ASM_DEBUGINFO): New #undef.
694         * Makeconfig (ASFLAGS): New variable, if undefined and
695         $(have-cpp-asm-debuginfo), take options matching -g% from $(CFLAGS).
696         * Makerules (compile.S, COMPILE.S): Use $(ASFLAGS).
698 2003-03-09  Roland McGrath  <roland@redhat.com>
700         * sysdeps/unix/sysv/linux/powerpc/powerpc32/clone.S: Take 3 new args
701         used by NPTL on new kernels.  From Paul Mackerras <paulus@samba.org>.
703 2003-03-09  Ulrich Drepper  <drepper@redhat.com>
705         * po/fi.po: Update from translation team.
706         * po/ca.po: Likewise.
707         * po/da.po: Likewise.
709 2003-03-08  Ulrich Drepper  <drepper@redhat.com>
711         * rt/tst-aio7.c (do_test): Change BYTES into a #define.
713 2003-03-07  Ulrich Drepper  <drepper@redhat.com>
715         * rt/tst-aio7.c (do_test): Give BUFF permanent extent, too.
717         * sysdeps/powerpc/fpu/w_sqrt.c: Fix comment.
719 2003-03-07  Roland McGrath  <roland@redhat.com>
721         * sysdeps/s390/s390-32/sysdep.h (L): Use .Lfoo instead of foo.
722         * sysdeps/s390/s390-64/sysdep.h (L): Likewise.
724 2003-03-04  Guido Guenther  <agx@sigxcpu.org>
726         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove unneeded
727         stubs, we have INLINE_SYSCALL.
728         * sysdeps/unix/sysv/linux/mips/bits/mman.h: Define MAP_POPULATE,
729         MAP_NONBLOCK.
731 2003-03-06  Roland McGrath  <roland@redhat.com>
733         * rt/tst-aio7.c (do_test): Revert last change.  Instead, give CB1
734         permanent extent and add a comment about testing its implicit teardown.
736 2003-03-06  Martin Schwidefsky  <schwidefsky@de.ibm.com>
738         * rt/tst-aio7.c (do_test): Cancel i/o on CB1 before it's out of scope.
740 2003-03-05  Ulrich Drepper  <drepper@redhat.com>
742         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Fix
743         reversed __builtin_expect expectation.
745 2003-03-05  Roland McGrath  <roland@redhat.com>
747         * stdio-common/sscanf.c: Use prototype defn with ... syntax.
748         * libio/swscanf.c: Likewise.
749         * libio/swprintf.c: Likewise.
751 2003-03-04  Roland McGrath  <roland@redhat.com>
753         * sysdeps/powerpc/powerpc64/dl-machine.h: Include <dl-tls.h>.
754         (elf_machine_rela): Always use RESOLVE_MAP, needed for
755         R_PPC64_JMP_SLOT as well as TLS cases.
756         (BIT_INSERT): Move parenthesis where it ought to have been.
757         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
759         * posix/confstr.c (confstr): Correct STRING_LEN values for
760         _CS_GNU_LIBC_VERSION and _CS_GNU_LIBPTHREAD_VERSION, add missing
761         break.  Reported by Alexandre Julliard <julliard@winehq.com>.
763 2003-03-04  Jakub Jelinek  <jakub@redhat.com>
765         * sysdeps/ia64/fpu/libm-test-ulps: Regenerated.
767 2003-03-04  Ulrich Drepper  <drepper@redhat.com>
769         * sysdeps/unix/sysv/linux/x86_64/clone.S: Add support for the new
770         clone parameters.
772         * po/sv.po: Update from translation team.
774 2003-03-04  Andreas Jaeger  <aj@suse.de>
775             Ulrich Drepper  <drepper@redhat.com>
777         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Fix comments.
779 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
781         * sysdeps/generic/dl-sysdep.h: Add double include protection.
783         * po/tr.po: Update from translation team.
785         * elf/dl-load.c (_dl_map_object_from_fd): Determine whether there
786         are holes between the segments.  Only call mprotect to set
787         proection to PROT_NONE if there are some.
789         * elf/dl-load.c (struct filebuf): Actually use FILEBUF_SIZE.
790         Update comment.
792         * include/sched.h (__clone2): Use ... instead of adding all the
793         new parameters.
795 2003-03-03  Roland McGrath  <roland@redhat.com>
797         * elf/dl-load.c (struct filebuf): Fix typo in last change.
799         * sysdeps/powerpc/powerpc32/elf/configure.in: Don't define
800         PI_STATIC_AND_HIDDEN.
802 2003-03-03  Ian Wienand  <ianw@gelato.unsw.edu.au>
804         * sysdeps/unix/sysv/linux/ia64/clone2.S: Update to take extra clone
805         flags.
806         * include/sched.h: Update clone2 prototype.
808 2003-03-03  Andreas Jaeger  <aj@suse.de>
810         * math/tgmath.h (__TGMATH_UNARY_REAL_RET_ONLY): New definition.
811         (llrint): Use it to correct return type.
812         (lrint): Likewise.
813         (lround): Likewise.
814         (llround): Likewise.
816 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
818         * elf/dl-load.c (struct filebuf): For 64-bit platforms use 640
819         byte filebuf size.
821         * libio/fileops.c (_IO_new_file_fopen): Close stillborn descriptor
822         if ccs parameter isn't valid.  Reported by Andreas Schwab.
824 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
826         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Add support
827         for system call numbers > 255.
828         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.h (DO_CALL,
829         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
830         INTERNAL_SYSCALL): Likewise.
831         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
832         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.h (DO_CALL,
833         INLINE_SYSCALL, INTERNAL_SYSCALL_DIRECT, INTERNAL_SYSCALL_SVC0,
834         INTERNAL_SYSCALL): Likewise.
836 2003-03-03  Martin Schwidefsky  <schwidefsky@de.ibm.com>
838         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Don't free the dtv
839         array if it is the initial dtv.
841 2003-03-03  Ulrich Drepper  <drepper@redhat.com>
843         * po/es.po: Update from translation team.
844         * po/fr.po: Likewise.
845         * po/gl.po: Likewise.
846         * po/sk.po: Likewise.
847         * po/sv.po: Likewise.
849         * sysdeps/unix/sysv/linux/syscalls.list: Add remap_file_pages entry.
850         * misc/sys/mman.h: Add prototype for remap_file_pages.
851         * sysdeps/generic/remap_file_pages.c: New file.
852         * misc/Makefile (routines): Add remap_file_pages.
853         * misc/Versions [libc:GLIBC_2.3.3]: Add remap_file_pages.
855         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Define MAP_POPULATE
856         and MAP_NONBLOCK.
857         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
858         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise
859         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
860         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
861         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
862         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
863         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Likewise.
864         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
866 2003-03-03  Roland McGrath  <roland@redhat.com>
868         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Revert last change.
869         * sysdeps/ia64/dl-machine.h: Likewise.
870         * sysdeps/ia64/dl-symaddr.c (_dl_symbol_address): Remove const from
871         argument type.
872         * sysdeps/ia64/dl-lookupcfg.h: Update decl.
874         * sysdeps/wordsize-64/strtol_l.c (strtoll_l): Define as weak alias.
875         * sysdeps/wordsize-64/strtoul_l.c (strtoull_l): Define as weak alias.
876         * locale/Versions (libc: GLIBC_2.3): Move those to ...
877         * sysdeps/wordsize-32/Versions (libc: GLIBC_2.3): ... here, new file.
878         * sysdeps/wordsize-64/Versions (libc: GLIBC_2.3.3) Likewise.
879         * Versions.def (libc): Add GLIBC_2.3.3 set.
881         * sysdeps/ia64/dl-fptr.c (__ia64_make_fptr): Add const to MAP arg.
882         * sysdeps/ia64/dl-machine.h: Update decl.
884 2003-03-03  Andreas Jaeger  <aj@suse.de>
886         * sysdeps/unix/clock_settime.c (HANDLE_REALTIME): Add missing brace.
888 2003-03-02  Roland McGrath  <roland@redhat.com>
890         * scripts/abilist.awk: Reject data items with apparent 0 size.
892         * scripts/merge-abilist.awk: Restore hack to elide pattern foo.*/bar
893         after foo.* as if it were a duplicate.
895         * sysdeps/unix/sysv/linux/ia64/brk.S: Add .type and .size for __curbrk.
897 2003-03-02  Ulrich Drepper  <drepper@redhat.com>
899         * elf/dl-load.c (struct filebuf): Reduce buf array to 512 bytes.
901         * sysdeps/generic/bits/time.h: Define CLOCK_MONOTONIC.
902         * sysdeps/posix/clock_getres.c: Define code for CLOCK_REALTIME only
903         if not already defined.  Use SYSDEP_GETRES to allow other files to
904         provide alternative implementations.
905         * sysdeps/unix/sysv/linux/clock_getres.c: New file
906         * sysdeps/unix/clock_gettime.c: Define code for CLOCK_REALTIME only
907         if not already defined.  Use SYSDEP_GETTIME to allow other files to
908         provide alternative implementations.
909         * sysdeps/unix/sysv/linux/clock_gettime.c: New file.
910         * sysdeps/unix/clock_settime.c: Define code for CLOCK_REALTIME only
911         if not already defined.  Use SYSDEP_GETTIME to allow other files to
912         provide alternative implementations.
913         * sysdeps/unix/sysv/linux/clock_settime.c: New file.
914         * sysdeps/unix/clock_nanosleep.c: Use SYSDEP_NANOSLEEP to allow
915         other files to provide alternative implementations.  Rearrange
916         tests for invalid parameters.
917         * sysdeps/unix/sysv/linux/clock_nanosleep.c: New file.
918         * sysdeps/unix/sysv/linux/sysconf.c: New file.
919         * sysdeps/unix/sysv/linux/kernel-features.h: Define
920         __ASSUME_POSIX_TIMERS for Linux 2.5.63 and up.
921         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define
922         _POSIX_MONOTONIC_CLOCK.
924 2003-03-02  Roland McGrath  <roland@redhat.com>
926         * scripts/merge-abilist.awk: More checks for bogus input.
927         Uniquify duplicate config names.
929         * scripts/abilist.awk: Don't distinguish weak symbols in normal output.
931         * sysdeps/powerpc/powerpc32/dl-machine.c (_dl_reloc_overflow): Renamed
932         from dl_reloc_overflow, make global.
933         (__process_machine_rela): Update callers.
934         * sysdeps/powerpc/powerpc32/dl-machine.h: Declare _dl_reloc_overflow.
935         Add attribute_hidden to __process_machine_rela decl.
936         (elf_machine_type_class, elf_machine_rela): Handle 16-bit TLS relocs.
938         * sysdeps/generic/libc-start.c (__libc_start_main): Don't assign const
939         variable.
941         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_fixup_plt):
942         Don't use weak_extern for dl_rtld_map.  Instead check only if [SHARED].
943         (elf_machine_rela): Clean up.
945         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Clean up.
947         PowerPC TLS support contributed by Paul Mackerras <paulus@samba.org>.
948         * sysdeps/powerpc/powerpc32/elf/configure.in: New file.
949         * sysdeps/powerpc/powerpc32/elf/configure: New generated file.
950         * elf/tls-macros.h [__powerpc__ && !__powerpc64__]
951         (TLS_LE, TLS_IE, TLS_LD, TLS_GD): Define them.
952         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_rela): Support
953         new relocs for TLS.
955         * sysdeps/powerpc/dl-tls.h (TLS_TP_OFFSET, TLS_DTV_OFFSET): Move these
956         macros out of [SHARED].
957         (TLS_TPREL_VALUE, TLS_DTPREL_VALUE): New macros.
959         * elf/elf.h: Define R_PPC_* relocs for TLS support.
960         Clean up R_PPC64_* macro definition comments.
962         * configure.in: In "running configure fragment for" message,
963         omit $srcdir from the name if we prepended it.
964         * configure: Regenerated.
966         * elf/dl-reloc.c (allocate_static_tls): Fix calculations.
967         From Jakub Jelinek <jakub@redhat.com>.
969         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Revert last change,
970         which duplicated the O_DIRECT defn.
972 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
974         * stdlib/stdlib.h: Add missing __USE_BSD enclosure for BSD derived
975         random functions.
977 2003-03-01  Andreas Schwab  <schwab@suse.de>
979         * resolv/Makefile (tests): Don't depend on
980         $(objpfx)mtrace-tst-leaks when cross compiling.
982         * sysdeps/m68k/dl-machine.h (_dl_start_user): Access
983         __libc_stack_end through GOT since it is a global symbol.
985 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
987         * argp/argp.h: Fix a typo.
988         Reported by H.S.Teoh <hsteoh@quickfur.ath.cx>.
990         * manual/terminal.texi: Fix cfmakeraw() definition from int to void.
992 2003-02-27  Pat Rankin  <rankin@pactechdata.com>
994         * posix/regexec.c (proceed_next_node): Cast re_string_get_buffer to
995         char *.
996         (get_subexp): Likewise.
998 2003-03-01  GOTO Masanori  <gotom@debian.or.jp>
1000         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h (O_DIRECT): Define.
1002 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
1004         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h (O_DIRECT): Define.
1006 2003-02-27  Roland McGrath  <roland@redhat.com>
1008         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_rela): Remove
1009         special case for dl_rtld_map in R_PPC64_RELATIVE; it's harmless to
1010         repeat it and avoids the test for the common case.
1011         Clean up and fix calculations for TLS relocs.
1013         * sysdeps/powerpc/powerpc64/dl-tls.h: Moved to ...
1014         * sysdeps/powerpc/dl-tls.h: ... here.
1015         (TLS_TP_OFFSET): New macro.
1017         * sunrpc/svc_udp.c (svcudp_recv): Add a cast to last change.
1019 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
1021         * sysdeps/i386/fpu/libm-test-ulps: Increase ULPs for yn due to
1022         code generation changes in recent gcc.
1024 2003-02-26  Steven Munroe  <sjmunroe@us.ibm.com>
1026         * sysdeps/powerpc/fpu/fpu_control.h (_FPU_GETCW, _FPU_SETCW):
1027         Rename argument to avoid symbol conflict.
1029         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h
1030         [__USE_GNU] (O_DIRECT): New macro.
1032 2003-02-24  David Mosberger  <davidm@hpl.hp.com>
1034         * sysdeps/unix/sysv/linux/ia64/sysdep.S (__syscall_error): Fix
1035         unwind info.
1037 2003-02-27  Ulrich Drepper  <drepper@redhat.com>
1039         * resolv/res_libc.c [USE___THREAD] (_res): Don't need the
1040         initializer anymore now that res_thread_freeres is more careful.
1042         * sunrpc/svc_udp.c (svcudp_recv): Remove all control messages
1043         except the PKTINFO.  Reset interface in PKTINFO.
1044         Patch by Neil Brown <neilb@cse.unsw.edu.au> [PR libc/4973].
1046 2003-02-25  Steven Munroe  <sjmunroe@us.ibm.com>
1048         * elf/elf.h: Add new R_PPC64_* relocs for TLS.
1049         * elf/tls-macros.h [__powerpc64__] (TLS_LE, TLS_IE, TLS_LD, TLS_GD):
1050         Define.
1051         * sysdeps/powerpc/powerpc64/elf/configure.in: New file.
1052         * sysdeps/powerpc/powerpc64/elf/configure: New file (generated).
1053         * sysdeps/powerpc/powerpc64/dl-machine.h: Support new TLS relocs.
1054         * sysdeps/powerpc/powerpc64/dl-tls.h: New file.
1056         * sysdeps/powerpc/elf/libc-start.c (__libc_start_main):
1057         Do DL_SYSDEP_OSCHECK here, matching 2002-12-01 change to generic file.
1059 2003-02-25  Andreas Jaeger  <aj@suse.de>
1061         * manual/memory.texi (Malloc Tunable Parameters): Clarify
1062         behaviour of M_MMAP_THRESHOLD.
1064 2003-02-25  Roland McGrath  <roland@redhat.com>
1066         * resolv/res_init.c (res_thread_freeres): Bail out if _res.nscount is
1067         zero, inidicating _res was not initialized yet.
1069 2003-02-24  Ulrich Drepper  <drepper@redhat.com>
1071         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Remove EACCES
1072         test.
1074 2003-02-24  Roland McGrath  <roland@redhat.com>
1076         * sysdeps/posix/pause.c: Add LIBC_CANCEL_HANDLED.
1078 2003-02-23  Roland McGrath  <roland@redhat.com>
1080         * sysdeps/posix/pause.c: New file.
1081         * sysdeps/unix/common/pause.c: File removed.
1083 2003-02-23  Ulrich Drepper  <drepper@redhat.com>
1085         * sysdeps/generic/bits/confname.h: Remove #ifs.
1087         * posix/Makefile (CFLAGS-regex.c): Remove RE_ENABLE_I18N definition.
1088         * posix/regex_internal.h (RE_ENABLE_I18N): Pretty printing.
1090         * resolv/res_libc.c [USE___THREAD] (_res): Initialize _vcsock
1091         element to -1.
1093 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
1095         * sysdeps/generic/dl-sysdep.c: Avoid warning.
1097 2003-02-22  Roland McGrath  <roland@redhat.com>
1099         * resolv/tst-leaks.c: New file by Daniel Jacobowitz <drow@mvista.com>.
1100         * resolv/Makefile (tests): Add tst-leaks.
1101         ($(objpfx)tst-leaks): Depend on $(objpfx)libresolv.so.
1102         (tst-leaks-ENV): New variable.
1103         ($(objpfx)mtrace-tst-leaks): New target.
1104         (tests): Depend on it.
1106         * include/libc-internal.h: Declare __libc_thread_freeres.
1108         * Makerules: Fix last change to use $($(subdir)-version) when set.
1110         * Makerules (install-lib-nosubdir): Depend on installed
1111         libfoo-X.Y.Z.so and libfoo.so.NN files so they are installed
1112         regardless of the libfoo.so target's dependencies.
1114         * MakeTAGS (sub-make-vars): New variable, includes generating=t.
1115         Use that in $(MAKE) calls.
1117 2003-02-22  Ulrich Drepper  <drepper@redhat.com>
1119         * catgets/gencat.c (read_input_file): Collision between
1120         auto-assigned numbers and user-defined nubmers is not fatal.
1121         Handle it.
1122         Patch by Michael M. Lampkin <michael.lampkin@ieee.org>.
1123         * catgets/Makefile: Add rules to run test2.msg test.
1124         * catgets/test2.msg: New file.
1126         * catgets/gencat.c (main): Return 1 if messages have been printed.
1128         * iconv/iconv_prog.c (main): Unify messages.
1130         * stdlib/strtod.c (INTERNAL): Remove bogus clearing of second word
1131         when shifting retval.
1132         * stdlib/tst-strtod.c (main): Add strtold test case.
1133         Reported by Fred J. Tydeman <tydeman@tybor.com>.
1135 2003-02-21  Roland McGrath  <roland@redhat.com>
1137         * malloc/thread-freeres.c: Conditionalize on _LIBC_REENTRANT.
1138         * sunrpc/rpc_thread.c: Likewise for text_set_element use.
1139         (__rpc_thread_destroy): Add it to __libc_subfreeres too.
1141         * include/resolv.h: Add libc_hidden_proto for __res_nclose.
1142         * resolv/res_init.c (__res_nclose): Add libc_hidden_def.
1143         (res_thread_freeres): New function, on __libc_thread_subfreeres and
1144         __libc_subfreeres.
1146         * malloc/Versions (libc: GLIBC_PRIVATE): Add __libc_thread_freeres.
1147         * malloc/thread-freeres.c: New file.
1148         * malloc/Makefile (aux): Add it.
1149         * sunrpc/Versions (libc: GLIBC_PRIVATE): Removed.
1150         * sunrpc/rpc_thread.c (__rpc_thread_destroy): Put in special section
1151         "__libc_thread_freeres_fn" and add to __libc_thread_subfreeres set.
1153         * sysdeps/unix/sysv/linux/i386/geteuid.c (__geteuid): Typo fix.
1154         * sysdeps/unix/sysv/linux/i386/getgid.c (__getgid): Typo fix.
1156 2003-02-21  Roland McGrath  <roland@frob.com>
1158         * sysdeps/mach/hurd/opendir.c (__opendir): Use O_NONBLOCK in open.
1160         * iconvdata/Makefile (tests): Add bug-iconv3 only if
1161         [$(have-thread-library) = yes].
1163 2003-02-21  Ulrich Drepper  <drepper@redhat.com>
1165         * sysdeps/unix/sysv/linux/bits/signum.h (__SIGRTMAX): Define as _NSIG.
1167         * sysdeps/unix/sysv/linux/i386/getuid.c: Use INTERNAL_SYSCALL and do
1168         not chechk for errors (unless testing for 32bit variant).
1169         * sysdeps/unix/sysv/linux/i386/getgid.c: Likewise.
1170         * sysdeps/unix/sysv/linux/i386/geteuid.c: Likewise.
1171         * sysdeps/unix/sysv/linux/i386/getegid.c: Likewise.
1173 2003-02-21  Jakub Jelinek  <jakub@redhat.com>
1175         * sysdeps/x86_64/dl-machine.h (elf_machine_rela) <R_X86_64_PC32>:
1176         Check for signed overflow, not unsigned.
1178         * sysdeps/sparc/sparc64/elf/configure.in: New file.
1179         * sysdeps/unix/sysv/linux/sparc/sparc64/Makefile (sysdep-CFLAGS):
1180         Use -fcall-used-g6, not -fcall-used-g7.
1182 2003-02-21  Andreas Jaeger  <aj@suse.de>
1184         * sysdeps/x86_64/fpu/fesetenv.c (fesetenv): Fix setting of default
1185         mode.
1187         * sysdeps/x86_64/fpu/fsetexcptflg.c (fesetexceptflag): Do not
1188         clear whole mxcsr but only exceptions.
1190 2003-02-21  Roland McGrath  <roland@redhat.com>
1192         * Makerules: Filter $(install-lib-ldscripts) out of list of targets
1193         for libfoo.so that need $(make-link) rules.
1195 2003-02-21  Roland McGrath  <roland@frob.com>
1197         * sysdeps/mach/hurd/bits/typesizes.h (__DEV_T_TYPE): Use __U32_TYPE
1198         to match existing struct stat layout in mig protocols.
1200 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1202         * version.h (VERSION): Bump to 2.3.2.
1204         * elf/Makefile (distribute): Add reldep9.c, tst-array1.exp,
1205         tst-array2.exp, tst-array4.exp, tst-array2dep.c, check-textrel.c,
1206         and dl-sysdep.h.
1207         * sysdeps/generic/Dist: Add sysdep-cancel.h.
1208         * sysdeps/powerpc/nofpu/Dist: Add soft-supp.h.
1209         * sysdeps/unix/Dist: Add s-proto-bp.S and s-proto-cancel.S.
1210         * sysdeps/unix/sysv/linux/Dist: Add pathconf.h.
1211         * sysdeps/unix/sysv/linux/i386/Dist: Add bp-thunk.h.
1212         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Dist: Add fe_nomask.c and
1213         ucontext_i.h.
1214         * Makefile (distribute): Add include/stubs-prologue.h,
1215         include/gnu/stubs.h, scripts/merge-abilist.awk, and
1216         scripts/extract-abilist.awk.
1218 2003-02-20  Roland McGrath  <roland@redhat.com>
1220         * math/Makefile (distribute): Don't add generated files.
1222 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1224         * math/Makefile: Rearrange variable definitions slightly to get
1225         definition in the right order.
1227 2003-02-20  Roland McGrath  <roland@redhat.com>
1229         * Makerules: Clean up conditional around include of tls.make.
1230         * Make-dist: Export generating=t to prevent using that.
1231         (+distinfo): Likewise for $(shell $(MAKE) ...) runs.
1233 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1235         * inet/rcmd.c (rresvport_af): Avoid using invliad values.  Wrap
1236         around in search if port IPPORT_RESERVED/2 has been test.
1238 2002-02-20  Paolo Bonzini  <bonzini@gnu.org>
1240         * posix/regcomp.c: Remove inclusions.
1241         * posix/regexec.c: Likewise.
1242         * posix/regex_internal.c: Likewise.
1243         * posix/regex_internal.h: Add inclusions here.
1244         * posix/regex.c: Only include sys/types.h before regex.h.  Include
1245         regex_internal.h here.  Include regex_internal.c before regcomp.c
1246         and regexec.c (might expose more opportunities to the C compiler).
1248         * posix/regcomp.c (parse_expression): Fix construct rejected by SGI CC.
1250         * posix/regex_internal.h [!_LIBC] (__mempcpy): Fix typo.
1251         [!_LIBC] (__wcrtomb): New definition.
1252         [!_LIBC]: Conditionalize enabling of I18N on HAVE_WCSCOLL and
1253         HAVE_LOCALE_H as well.
1255 2003-02-20  Ulrich Drepper  <drepper@redhat.com>
1257         * sysdeps/unix/sysv/linux/tcsetattr.c (tcsetattr): Remove obsolete
1258         patch to check for system call errors.
1260 2002-07-24  Philip Blundell  <philb@gnu.org>
1262         * sysdeps/unix/sysv/linux/arm/ioperm.c (init_iosys): Yield ENODEV
1263         on unknown systems.
1265 2003-02-20  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1267         * sysdeps/powerpc/powerpc32/atomicity.h: Remove compiler workaround.
1268         * sysdeps/unix/sysv/linux/kernel-features.h
1269         (__ASSUME_NEW_PRCTL_SYSCALL): Defined for ppc32 too.
1270         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: Use prctl
1271         if possible.
1272         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: Avoid short
1273         interprocedure branches.
1274         * sysdeps/powerpc/soft-fp/Dist (sim-full.c, fenv_const.c): Move to...
1275         * sysdeps/powerpc/nofpu/Dist: ...here.
1276         * sysdeps/unix/sysv/linux/powerpc/Dist (fe_nomask.c): Move to...
1277         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Dist: ...here.
1278         * sysdeps/unix/sysv/linux/s390/s390-64/Dist (kernel_stat.h): Delete.
1279         * sysdeps/unix/sysv/linux/sparc/Dist (bits/utmpx.h): Delete.
1280         * sysdeps/unix/sysv/linux/x86_64/Dist (bits/utmpx.h): Delete.
1282 2003-02-18  Alan Modra  <amodra@bigpond.net.au>
1284         * sysdeps/powerpc/powerpc32/sysdep.h (HIDDEN_JUMPTARGET): Redefine.
1286 2003-02-20  Philip Blundell  <philb@gnu.org>
1288         * sysdeps/unix/sysv/linux/arm/sysdep.h (INLINE_SYSCALL): Add
1289         missing arguments to INTERNAL_SYSCALL_ERROR_P and
1290         INTERNAL_SYSCALL_ERRNO.
1292 2003-02-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1294         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__real_chown): Test
1295         for __ASSUME_32BITUIDS.
1297 2003-02-20  Andreas Schwab  <schwab@suse.de>
1299         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Add MADV_* and
1300         POSIX_MADV_* constants.
1302 2003-02-20  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1304         * sysdeps/unix/sysv/linux/sh/pread.c: New file.
1305         * sysdeps/unix/sysv/linux/sh/pread64.c: New file.
1306         * sysdeps/unix/sysv/linux/sh/pwrite.c: New file.
1307         * sysdeps/unix/sysv/linux/sh/pwrite64.c: New file.
1309 2003-02-19  Jiro Sekiba  <jir@yamato.ibm.com>
1311         * iconvdata/utf-16.c (gconv_end): Fix range of low surrogate.
1313 2003-02-16  Roland McGrath  <roland@redhat.com>
1315         * signal/signal.h: Include <sys/ucontext.h>, not <ucontext.h>.
1317 2003-02-19  Ulrich Drepper  <drepper@redhat.com>
1319         * stdlib/strtod.c (INTERNAL): Up the safety margin for cutting off
1320         decimal input digits.
1321         * stdlib/tst-strtod.c (main): Add test for strtof bug.
1323 2003-02-18  Ulrich Drepper  <drepper@redhat.com>
1325         * sysdeps/unix/sysv/linux/ttyname_r.c (__ttyname_r): Recognize
1326         invalid file descriptors and missing access permissions.
1328 2003-02-17  Ulrich Drepper  <drepper@redhat.com>
1330         * nss/getXXbyYY_r.c (REENTRANT_NAME): Return 0 if no entry has
1331         been found.
1333         * sysdeps/posix/sysconf.c (__sysconf): Test for LOGIN_NAME_MAX and
1334         TTY_NAME_MAX and not the _POSIX_* minimal value macros.
1335         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define TTY_NAME_MAX
1336         and LOGIN_NAME_MAX.
1338 2003-02-17  Kevin B. Hendricks  <kevin.hendricks@sympatico.ca>
1339             Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1341         * sysdeps/powerpc/elf/libc-start.c: Handle NONTLS_INIT_TP.
1342         * sysdeps/powerpc/powerpc32/__longjmp.S: Remove R2 handling.
1343         * sysdeps/powerpc/powerpc32/setjmp.S: Likewise.
1344         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Likewise.
1345         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Likewise.
1347 2003-02-17  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
1349         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Delete.
1350         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Delete.
1351         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Delete.
1352         * sysdeps/unix/sysv/linux/powerpc/pread.c: Delete.
1353         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Delete.
1354         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Delete.
1356         * sysdeps/unix/sysv/linux/powerpc/fe_nomask.c: Move file...
1357         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fe_nomask.c: ...here.
1358         * sysdeps/unix/sysv/linux/powerpc/glob64.c: Move file...
1359         * sysdeps/unix/sysv/linux/powerpc/powerpc32/glob64.c: ...here.
1361         * sysdeps/unix/sysv/linux/tcgetattr.c: Use INLINE_SYSCALL.
1362         * sysdeps/unix/sysv/linux/tcsetattr.c: Likewise.
1363         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Delete.
1364         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Delete.
1366 2003-02-14  Thorsten Kukuk  <kukuk@suse.de>
1368         * nss/getent.c (print_hosts): Print all IP addresses of one host.
1370 2003-02-15  Roland McGrath  <roland@frob.com>
1372         * sysdeps/mach/hurd/tls.h: New file.
1373         * sysdeps/mach/hurd/i386/tls.h: New file.
1375         * mach/errsystems.awk: Include <errno.h> in generated output.
1377         * sysdeps/mach/Makefile (mach-before-compile rule): Pass generating=t,
1378         use target mach-before-compile instead of generated.
1379         (mach-before-compile): New target.
1380         * Makerules: Disable use of tls.make if $(generating) is set.
1381         * mach/Makefile: Include mach-syscalls.mk even if no_deps=t.
1382         * sysdeps/mach/hurd/Makefile: Make generated hurd headers depend on
1383         mach-shortcuts.h so mach/ generation happens before hurd/.
1385 2003-02-14  Ulrich Drepper  <drepper@redhat.com>
1387         * sysdeps/i386/fpu/s_nextafterl.c: Decrement high word of mantissa
1388         of demorm correctly if low word is zero.
1389         Reported by Fred J. Tydeman <tydeman@tybor.com>.
1390         * math/libm-test.inc (nextafter_test): New test, but disabled due
1391         to gcc bug.
1393         * sysdeps/generic/libc-start.c [HAVE_PTR_NTHREADS]: Decrement thread
1394         counter and only call __exit_thread if this is not the last thread.
1396 2003-02-13  Jakub Jelinek  <jakub@redhat.com>
1398         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Add instead of
1399         subtracting map->l_tls_offset.
1401 2003-02-12  Ulrich Drepper  <drepper@redhat.com>
1403         * sysdeps/generic/bits/confname.h: Define _CS_GNU_LIBC_VERSION and
1404         _CS_GNU_LIBPTHREAD_VERSION.
1405         * posix/conststr.c: Handle these new values.
1406         * posix/getconf.c: Likewise.
1408         * sysdeps/mips/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE): Fix
1409         masking of version index.
1410         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
1412 2003-02-11  Ulrich Drepper  <drepper@redhat.com>
1414         * nss/nss_files/files-hosts.c (HOST_DB_LOOKUP): Compute alignment
1415         correctly.  Reported by Thorsten Kukuk.
1417 2003-02-10  Ulrich Drepper  <drepper@redhat.com>
1419         * elf/Makefile (check-textrel-CFLAGS): Pass _XOPEN_SOURCE and
1420         _BSD_SOURCE to compiler.
1421         * elf/check-textrel.c (SWAP): Add parenthesis to avoid warnings.
1422         Patches by Alan Modra.
1424 2003-02-08  Ulrich Drepper  <drepper@redhat.com>
1426         * io/ftwtest.c: Get current working directory before and after the
1427         nftw call and make sure they match.
1429 2003-02-08  Jim Meyering  <jim@meyering.net>
1431         * io/ftw.c (ftw_startup): When using FTW_CHDIR, always remember
1432         the current directory, not just when DIR contains a slash.
1433         Reported by Manoj Srivastava.
1435 2003-02-07  Jim Meyering  <jim@meyering.net>
1437         * io/ftw.c: Add autoconf-recommended block of alloca-related code.
1438         Include autoconf-recommended block of dirent/NAMELEN-related
1439         definitions and includes.  Use NAMELEN throughout, rather than
1440         _D_EXACT_NAMLEN.
1441         [_LIBC]: Define NAMELEN to _D_EXACT_NAMLEN.
1442         [!_LIBC] (__getcwd): Define to xgetcwd and declare xgetcwd.
1443         (stpcpy): Declare, if necessary.
1444         (mempcpy): Define, if necessary.
1445         [!_LIBC] (__stpcpy, __mempcpy): Define.
1446         [!_LIBC] (LXSTAT, XSTAT): Define.
1447         (lstat) [!LIBC && !LSTAT_FOLLOWS_SLASHED_SYMLINK]: Define to rpl_lstat.
1448         (find_object): Don't use c99-style struct initializer.
1449         Tweak wording in a couple comments.
1451 2003-02-07  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1453         * elf/tls-macros.h: Add non-PIC TLS macros and fix clobber list
1454         for SH.
1455         * sysdeps/unix/sysv/linux/sh/brk.c: Add SYSCALL_INST_PAD
1456         after the trapa instruction.
1457         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Add additional
1458         parameters.
1459         * sysdeps/unix/sysv/linux/sh/sh4/sysdep.h: New file.
1460         (NEED_SYSCALL_INST_PAD): Define.
1461         * sysdeps/unix/sysv/linux/sh/sys/user.h (start_thread): Undef to
1462         avoid to use definition for the kernel.
1463         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
1464         Save and restore the frame pointer.
1465         (SYSCALL_INST_PAD): Define.
1466         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
1467         (INTERNAL_SYSCALL): Make use of ERR parameter. Add SYSCALL_INST_PAD
1468         after trapa instruction.
1469         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
1470         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
1472 2003-02-07  Jakub Jelinek  <jakub@redhat.com>
1474         * resolv/res_libc.c (_res): Ensure _res is not common symbol,
1475         so that it can have aliases.
1476         * inet/herrno.c (h_errno): Put it into .bss not .data section.
1478 2003-02-07  Ulrich Drepper  <drepper@redhat.com>
1480         * elf/dl-runtime.c (fixup): Correct typo in version index computation.
1481         (profile_fixup): Likewise.
1482         Patch by Lance Larsh <Lance.Larsh@oracle.com>.
1484 2002-11-24  Robert Love  <rml@tech9.net>
1486         * posix/sched.h: Second parameter of sched_setaffinity and
1487         sched_getaffinity is `unsigned int', not `unsigned long'.
1488         * sysdeps/generic/sched_setaffinity.c: Likewise.
1489         * sysdeps/generic/sched_getaffinity.c: Likewise.
1491 2003-02-05  Ulrich Drepper  <drepper@redhat.com>
1493         * debug/catchsegv.sh: Fix typo in error messsage.
1494         Reported by John Levon <levon@movementarian.org>.
1496         * sysdeps/unix/sysv/linux/posix_fadvise.c: New file.
1497         * sysdeps/unix/sysv/linux/syscalls.list: Add posix_fadvise64 syscall.
1498         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Likewise.
1499         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
1500         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
1501         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1502         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
1504         * libio/putwc_u.c: Use _IO_putwc_unlocked, not _IO_putc_unlocked.
1505         Patch by Moritz Schulte <moritz@duesseldorf.ccc.de>.
1507 2003-02-05  Jim Meyering  <jim@meyering.net>
1509         Fix a heap-corrupting bug.
1510         * io/ftw.c: Include <limits.h>.
1511         (PATH_MAX) [!defined PATH_MAX]: Define to 1024.
1512         (process_entry): Allocate enough space to hold the resulting
1513         file name.  Don't presume that 2*dirbufsize is enough.
1514         (ftw_startup): Always use PATH_MAX to compute buffer size, now that
1515         it is guaranteed to be defined.
1517 2003-02-04  Ulrich Drepper  <drepper@redhat.com>
1519         * iconvdata/Makefile: Add rules to build and run bug-iconv3.
1520         * iconvdata/bug-iconv3.c: New file.
1522 2003-02-04  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1524         * sysdeps/unix/sysv/linux/s390/system.c: New file.
1526 2003-02-03  Jakub Jelinek  <jakub@redhat.com>
1528         * sysdeps/sparc/sparc32/elf/configure.in (BROKEN_SPARC_WDISP22): New
1529         check.
1530         * config.h.in (BROKEN_SPARC_WDISP22): Add.
1532 2003-02-03  Ulrich Drepper  <drepper@redhat.com>
1534         * sysdeps/i386/i686/memmove.S: New file.
1536 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
1538         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c:
1539         Include kernel-features.h
1540         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1541         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: Likewise.
1542         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
1543         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1545 2003-02-02  Jakub Jelinek  <jakub@redhat.com>
1547         * elf/tls-macros.h [sparc] (TLS_LD, TLS_GD): Add "cc" clobbers.
1549 2003-01-25  Jim Meyering  <jim@meyering.net>
1551         * io/ftw.c (object_compare): Compare inode numbers before device
1552         numbers, since the former are much more likely to differ.
1554 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
1556         * time/tzfile.c (__tzfile_compute): Change return value type to
1557         void.  Adjust return statements.
1558         * include/time.h (__tzfile_compute): Adjust prototype.
1560 2003-02-01  Jim Meyering  <jim@meyering.net>
1562         * time/tzset.c (__tz_convert): Remove dead code; __tzfile_compute
1563         always returns 1.
1565 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
1567         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
1568         [!__ASSUME_NEW_PRCTL_SYSCALL]: Noop prctl syscall and set ENOSYS.
1570 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
1572         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1573         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Generate ENOSYS stub.
1574         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
1575         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
1576         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
1577         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
1578         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1579         [!__ASSUME_NEW_RT_SIGRETURN_SYSCALL]: Likewise.
1581 2003-01-31  Steven Munroe  <sjmunroe@us.ibm.com>
1583         * sysdeps/unix/sysv/linux/configure.in: Change arch_minimum_kernel
1584         back to 2.4.19 for powerpc64.
1585         * sysdeps/unix/sysv/linux/kernel-features.h
1586         (__ASSUME_NEW_PRCTL_SYSCALL): Define for powerpc64.
1587         (__ASSUME_NEW_RT_SIGRETURN_SYSCALL): Define for powerpc64.
1589 2003-02-01  Ulrich Drepper  <drepper@redhat.com>
1591         * wcsmbs/wcscpy.c (wcscpy): Add alternative implementation for
1592         platforms with strange alignment requirements on wchar_t.
1594 2003-01-31  Andreas Schwab  <schwab@suse.de>
1596         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove __GI_*
1597         aliases, already added by make-syscalls.sh.
1598         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
1599         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
1600         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
1601         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
1602         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
1603         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
1604         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
1605         * sysdeps/unix/inet/syscalls.list: Likewise.
1606         * sysdeps/unix/syscalls.list: Likewise.
1608 2003-01-31  Andreas Schwab  <schwab@suse.de>
1610         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Don't define, not needed
1611         any more.
1613 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
1615         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Use lg,
1616         not l to load tls from stack.
1618 2003-01-30  Roland McGrath  <roland@redhat.com>
1620         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Move check for
1621         null argument before all else.
1622         Reported by Martin Schwidefsky <schwidefsky@de.ibm.com>.
1624 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
1626         * sysdeps/powerpc/powerpc32/dl-machine.h (elf_machine_lazy_rel):
1627         Move to RESOLVE protected part of the header.
1628         * sysdeps/powerpc/powerpc64/dl-machine.h (elf_machine_lazy_rel):
1629         Likewise.
1631 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
1633         * stdio-common/Makefile (tests): Add bug15.
1634         (bug15-ENV): Define.
1635         * stdio-common/bug15.c: New file.
1637 2002-10-07  Wolfram Gloger  <wg@malloc.de>
1639         * malloc/malloc.c (sYSMALLOc): Only check for breakage due
1640         to foreign sbrk()'s if arena is contiguous.  Bug report from
1641         Bruno Haible <bruno@clisp.org>.
1643 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
1645         * sysdeps/s390/libc-tls.c: Include stdlib.h.
1647 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
1649         * stdio-common/vfprintf.c (vfprintf): Only subtract lowest 3 bits of
1650         ps.__count.
1652 2003-01-30  Ulrich Drepper  <drepper@redhat.com>
1654         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Fix storing and
1655         restoring of %r6.
1656         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.  Use
1657         64-bit load.
1658         Patch by Martin Schwidefsky  <schwidefsky@de.ibm.com>.
1660 2003-01-30  Jakub Jelinek  <jakub@redhat.com>
1662         * elf/dl-reloc.c (CHECK_STATIC_TLS): Move _dl_signal_error...
1663         (allocate_static_tls): ...here.  Add __attribute_noinline__.
1664         Don't return on failure.
1665         (_dl_reloc_bad_type): Add __attribute_noinline__.
1666         * elf/do-rel.h (elf_dynamic_do_rel): Add
1667         __attribute__((always_inline)).
1668         * elf/dynamic-link.h (elf_machine_rel, elf_machine_rela,
1669         elf_machine_rel_relative, elf_machine_rela_relative,
1670         elf_machine_lazy_rel): Add prototypes with
1671         __attribute__((always_inline)).
1673 2003-01-29  David Mosberger  <davidm@hpl.hp.com>
1675         * elf/dl-support.c (_dl_aux_init): Handle AT_SYSINFO.
1677 2003-01-29  Roland McGrath  <roland@redhat.com>
1679         * configure.in: Barf if configured in $srcdir.
1681 2003-01-28  Steven Munroe  <sjmunroe@us.ibm.com>
1683         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
1684         (__fe_nomask_env): Change __prctl call to INTERNAL_SYSCALL.
1686 2003-01-28  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1688         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Reorder additional
1689         clone parameters to match the order used on ia32.
1690         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
1692 2003-01-27  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1694         * elf/elf.h: Add new s390 relocs.
1695         * elf/tls-macros.h: Add s390 versions.
1696         * sysdeps/s390/Versions [GLIBC_2.3] (ld): Export __tls_get_offset.
1697         * sysdeps/s390/dl-tls.h: New file.
1698         * sysdeps/s390/libc-tls.c: New file.
1699         * sysdeps/s390/s390-32/dl-machine.h (elf_machine_type_class): Add TLS
1700         relocs for class PLT.
1701         (elf_machine_rela): Handle TLS relocs.
1702         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
1703         * sysdeps/s390/s390-32/elf/configure.in: Add TLS check.
1704         * sysdeps/s390/s390-64/elf/configure.in: Likewise.
1705         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S: Add support for
1706         CLONE_CHILD_*TID flags.
1707         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S: Likewise.
1708         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S: Use branch with 32
1709         bit offset.
1710         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
1711         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S: Likewise.
1712         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
1713         Support USE___THREAD. Define RTLD_PRIVATE_ERRNO variant.
1714         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
1715         Likewise.
1716         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h:
1717         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER.
1718         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
1719         variants.
1720         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h:
1721         (SYSCALL_ERROR_LABEL): Move define next to SYSCALL_ERROR_HANDLER. Use
1722         direct branch to syscall_error for !PIC and PIC && !_LIBC_REENTRANT.
1723         (SYSCALL_ERROR_HANDLER): Add USE___THREAD and RTLD_PRIVATE_ERRNO
1724         variants.
1726 2003-01-28  Ulrich Drepper  <drepper@redhat.com>
1728         * sysdeps/unix/common/pause.c (do_pause): New function.  Split
1729         from __libc_pause.  Implement using sigsuspend.
1730         (__libc_pause): Call do_pause to do the real work.
1732         * sysdeps/posix/sigpause.c (do_sigpause): Check range of
1733         sig_or_mask parameter is is_sig != 0.
1735 2003-01-21  Philip Blundell  <philb@gnu.org>
1737         * sysdeps/unix/sysv/linux/bits/ioctls.h (SIOCSIFNAME): Define.
1739 2003-01-27  Steven Munroe  <sjmunroe@us.ibm.com>
1741         * stdio-common/Makefile: Add bug14-ENV to set LOCPATH for make check.
1743 2003-01-27  Ulrich Drepper  <drepper@redhat.com>
1745         * stdio-common/bug14.c: Use official name for the locale.
1747         * stdio-common/vfprintf.c [USE_IN_LIBIO]: Use _IO_cleanup_region_start
1748         instead of __libc_cleanup_region_start and _IO_cleanup_region_end
1749         instead of __libc_cleanup_region_end.
1751         * sysdeps/unix/sysv/linux/i386/system.c (CLEANUP_HANDLER): Pass 1
1752         as first parameter to __libc_cleanup_region_start.
1754         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c
1755         (__fe_nomask_env): Use __prctl not prctl.
1756         * sysdeps/unix/sysv/linux/syscalls.list: Add __prctl alias for
1757         prctl syscall.
1759         * elf/dl-reloc.c (CHECK_STATIC_TLS): Improve error message.
1761         * elf/dl-open.c (_dl_tls_static_size): Bump to 2048.
1763         * elf/dl-reloc.c (allocate_static_tls): Avoid arithmetic
1764         wrap-around in test.
1766 2003-01-26  Andreas Schwab  <schwab@suse.de>
1768         * sysdeps/wordsize-32/divdi3.c: Export the functions only as
1769         compatibility symbols.  Remove INTDEF for __divdi3.
1770         * sysdeps/wordsize-32/lldiv.c: Don't use __divdi3_internal.
1771         * sysdeps/powerpc/powerpc32/divdi3.c: Remove.
1772         * sysdeps/powerpc/powerpc32/Makefile (CPPFLAGS-divdi3.c): Don't
1773         define.
1774         * sysdeps/powerpc/powerpc32/Dist: Remove divdi3.c.
1776 2003-01-24  Jakub Jelinek  <jakub@redhat.com>
1778         * elf/tls-macros.h: Add SPARC 32-bit definitions.
1779         * sysdeps/sparc/sparc32/elf/configure.in: Add TLS check.
1780         * sysdeps/sparc/sparc32/dl-machine.h: Add dl_machine_h guards
1781         for the first half of the header.  Include tls.h.
1782         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS
1783         relocs too.
1784         (elf_machine_rela): Handle TLS relocs.
1785         * sysdeps/sparc/dl-tls.h: New file.
1787         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S: Add cancellation
1788         support.
1790         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Use %g6 instead of %g7.
1791         * sysdeps/sparc/sparc32/memchr.S: Likewise.
1792         * sysdeps/sparc/sparc32/memcpy.S: Likewise.
1793         * sysdeps/sparc/sparc32/strcat.S: Likewise.
1794         * sysdeps/sparc/sparc32/strchr.S: Likewise.
1795         * sysdeps/sparc/sparc32/strcmp.S: Likewise.
1796         * sysdeps/sparc/sparc32/strcpy.S: Likewise.
1797         * sysdeps/sparc/sparc64/sparcv9b/memcpy.S: Likewise.
1798         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
1799         * sysdeps/sparc/sparc64/memcpy.S: Likewise.
1800         * sysdeps/sparc/sparc64/stpcpy.S: Likewise.
1801         * sysdeps/sparc/sparc64/stpncpy.S: Likewise.
1802         * sysdeps/sparc/sparc64/strcat.S: Likewise.
1803         * sysdeps/sparc/sparc64/strchr.S: Likewise.
1804         * sysdeps/sparc/sparc64/strcmp.S: Likewise.
1805         * sysdeps/sparc/sparc64/strcpy.S: Likewise.
1806         * sysdeps/sparc/sparc64/strncmp.S: Likewise.
1807         * sysdeps/sparc/sparc64/strncpy.S: Likewise.
1808         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Likewise.
1809         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Likewise.
1811 2003-01-24  Andreas Schwab  <schwab@suse.de>
1813         * elf/dl-close.c (_dl_close): Don't relocate DT_FINI_ARRAY
1814         elements, and process them backwards.
1815         * elf/Makefile ($(objpfx)tst-array4): New target.
1816         ($(objpfx)tst-array4.out): Likewise.
1817         (tests) [$(have-initfini-array) = yes]: Add tst-array4.
1818         * elf/tst-array4.c: New file.
1819         * elf/tst-array4.exp: Likewise.
1821 2003-01-24  Steven Munroe  <sjmunroe@us.ibm.com>
1823         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fe_nomask.c: New file.
1825 2003-01-27  Guido Guenther  <agx@sigxcpu.org>
1827         * sysdeps/unix/sysv/linux/mips/sysdep.h (SYSCALL_ERROR_LABEL): Define.
1828         * sysdeps/unix/sysv/linux/mips/pread.c: Add support for
1829         cancellation handling and handle both __NR_pread64 and __NR_pread.
1830         * sysdeps/unix/sysv/linux/mips/pread64.c: Likewise.
1831         * sysdeps/unix/sysv/linux/mips/pwrite.c: Add support for
1832         cancellation handling and handle both __NR_pwrite64 and __NR_pwrite.
1833         * sysdeps/unix/sysv/linux/mips/pwrite64.c: Likewise.
1834         * sysdeps/unix/mips/sysdep.S: Don't set errno in the _LIBC_REENTRANT
1835         case, use register names consistently.
1837 2003-01-27  Wolfram Gloger  <wg@malloc.de>
1839         * malloc/hooks.c (mem2chunk_check): Check alignment of mem
1840         pointer, not of the computed chunk.  Bug report from Carlos
1841         O'Donell <carlos@baldric.uwo.ca>.
1843 2003-01-25  Andreas Schwab  <schwab@suse.de>
1845         * sysdeps/m68k/dl-machine.h (_dl_start_user): Use pc-relative
1846         addressing to save GOT entries.
1848 2003-01-21  Jakub Jelinek  <jakub@redhat.com>
1850         * sysdeps/unix/alpha/sysdep.h (inline_syscall0,
1851         inline_syscall1, inline_syscall2, inline_syscall3,
1852         inline_syscall4, inline_syscall5, inline_syscall6): Add __volatile__.
1853         * sysdeps/unix/sysv/linux/alpha/sysdep.h (INTERNAL_SYSCALL): Add
1854         __attribute__((unused)) to ChEcK.
1856 2003-01-20  Martin Schwidefsky  <schwidefsky@de.ibm.com>
1858         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL):
1859         Fix inline assembler constraints.
1860         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL):
1861         Likewise.
1863         * sysdeps/s390/s390-64/Makefile (pic-ccflag): Use -fpic instead of
1864         -fPIC.
1866 2003-01-20  Segher Boessenkool  <segher@koffie.nl>
1868         * sysdeps/ieee754/dbl-64/sincos32.c (__mpcos): Really
1869         compute the cosine, not the sine, even if x > 0.8.
1871 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
1873         * nis/nss_nis/nis-spwd.c: Make _nss_nis_endspent an alias of
1874         _nss_nis_setspent.  Work around the different prototypes.
1875         * nis/nss_nis/nis-rpc.c (internal_nis_setrpcent): Use
1876         internal_nis_endrpcent.
1877         (internal_nis_endrpcent): Change return type to void.  Change callers.
1878         * nis/nss_nis/nis-pwd.c: Make _nss_nis_endpwent an alias of
1879         _nss_nis_setpwent.  Work around the different prototypes.
1880         * nis/nss_nis/nis-proto.c (_nss_nis_endprotoent): Split out body
1881         of the function to...
1882         (internal_nis_endprotoent): ... here.  New function.
1883         (internal_nis_setprotoent): Use internal_nis_endprotoent.
1884         * nis/nss_nis/nis-network.c: Make _nss_nis_endnetent an alias of
1885         _nss_nis_setnetent.  Work around the different prototypes.
1886         * nis/nss_nis/nis-netgrp.c (_nss_nis_endnetgrent): Split out body
1887         of the function to...
1888         (internal_nis_endnetgrent): ... here.  New function.
1889         (_nss_nis_setnetgrent): Use internal_nis_endnetgrent.
1891 2003-01-19  Jim Meyering  <jim@meyering.net>
1893         * time/strftime.c: (widen): Merge nearly-identical definitions.
1894         (nl_get_alt_digit) [! defined my_strftime]: Define.
1895         (my_strftime) [_NL_CURRENT]: Merge nearly-identical uses of
1896         _nl_get_alt_digit and _nl_get_walt_digit.
1898 2003-01-19  Ulrich Drepper  <drepper@redhat.com>
1900         * time/strftime.c (my_strftime): Handle very large width
1901         specifications for numeric values correctly.  Improve checks for
1902         overflow.
1903         * time/Makefile (tests): Add tst-strftime.
1904         * time/tst-strftime.c: New file.
1906 2003-01-18  Ulrich Drepper  <drepper@redhat.com>
1908         * nis/nss_nis/nis-hosts.c: Make _nss_nis_endhostent an alias of
1909         _nss_nis_sethostent.  Work around the different prototypes.
1910         * nis/nss_nis/nis-grp.c: Make _nss_nis_endgrent an alias of
1911         _nss_nis_setgrent.  Work around the different prototypes.
1912         * nis/nss_nis/nis-ethers.c (internal_nis_endetherent): New
1913         function.  Split out from _nss_nis_endetherent.
1914         (internal_nis_setetherent): Use internal_nis_endetherent instead of
1915         duplicating the code.
1916         * nis/nss_nis/nis-alias.c: Make _nss_nss_nis_endaliasent an alias
1917         of _nss_nis_setaliasent.
1918         * nis/nss_nis/nis-service.c (internal_nis_setservent): Reuse
1919         internal_nis_endservent code, don't duplicate it.
1921         * inet/rexec.c (rexec_af): Protect socket operations with
1922         TEMP_FAILURE_RETRY.  Use writev instead of multiple write.
1923         * inet/rcmd.c (rcmd_af): Likewise.
1925 2003-01-17  Roland McGrath  <roland@redhat.com>
1927         * math/libm-test.inc (sin_test, cos_test, sincos_test) [TEST_DOUBLE]:
1928         Add test of value 0.80190127184058835.
1930         * elf/dl-open.c: Fix typo ifdef -> ifndef on _dl_tls_static_size defn.
1932 2003-01-17  Richard Henderson  <rth@redhat.com>
1934         * sysdeps/alpha/dl-machine.h (elf_machine_type_class): Add TLS
1935         relocs for class PLT.
1936         * sysdeps/alpha/libc-tls.c: New file.
1937         * sysdeps/unix/alpha/sysdep.S (EPILOGUE, GPSAVEREG): New.
1938         (LOADGP) [!PIC]: Rewrite to preserve caller's gp.
1940 2003-01-17  Jakub Jelinek  <jakub@redhat.com>
1942         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Use
1943         __libc_lock_{,un}lock_recursive instead of __libc_lock_{,un}lock
1944         on _dl_static_lock.
1946 2003-01-17  Andreas Jaeger  <aj@suse.de>
1948         * stdio-common/bug14.c: Include stdlib.h for exit prototype.
1950 2003-01-16  Steven Munroe  <sjmunroe@us.ibm.com>
1952         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: New file.
1953         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S: New file.
1954         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: New file.
1955         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: New file.
1956         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h: New file.
1957         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: New file.
1958         * sysdeps/unix/sysv/linux/configure.in: Minimum kernel for PPC64
1959         is 2.4.21.
1961 2003-01-16  Ulrich Drepper  <drepper@redhat.com>
1963         * sysdeps/generic/glob.c (glob): Assume sysconf() always returns
1964         values != -1 for _LIBC.  Use extend_alloca to reallocate alloca'ed
1965         buffers.
1967         * sysdeps/generic/sysconf.c: Unconditionally implement
1968         _SC_GETPW_R_SIZE_MAX and _SC_GETGR_R_SIZE_MAX.
1969         * sysdeps/posix/sysconf.c: Likewise.
1971 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
1973         * posix/regcomp.c (parse_bracket_exp): If build_charclass fails,
1974         set *err to the returned error, not to REG_ESPACE unconditionally.
1975         (build_word_op): Likewise.
1976         * posix/Makefile (tests): Add bug-regex16.
1977         * posix/bug-regex16.c: New test.
1979 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
1981         * elf/dl-load.c (_dl_map_object_from_fd): Use
1982         GL(dl_tls_dtv_slotinfo_list) != NULL to check whether TLS has
1983         been already initialized.
1985 2003-01-15  Dmitry V. Levin  <ldv@altlinux.org>
1987         * sysdeps/unix/sysv/linux/ptsname.c: Fix typo in comment.
1989 2003-01-16  Jakub Jelinek  <jakub@redhat.com>
1991         * posix/regcomp.c (re_compile_internal): If clearing buffer, clear
1992         allocated too.  Reported by Al Viro <aviro@redhat.com>.
1994 2003-01-16  Roland McGrath  <roland@redhat.com>
1996         Tweak merged .abilist file format to merge duplicate symbols in
1997         different sets into multi-version stanzas with new "| SET regexp..."
1998         header continuation lines.
1999         * scripts/merge-abilist.awk: Rewritten for new format.
2000         * scripts/extract-abilist.awk: Likewise.
2002 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
2004         * nscd/connections.c (nscd_run): Remove bogus return which isn't
2005         necessary with gcc 3.2+.
2006         (nscd_init): Don't use error() to print message, use dbg_log.
2008         * iconv/gconv_simple.c (STORE_REST): Explicitly store the total
2009         expected size into state.
2010         (UNPACK_BYTES): Do the reverse.
2011         * iconv/loop.c: Use CLEAR_STATE if defined to clear __state element.
2012         * wcsmbs/tst-mbrtowc.c (utf8_test_1): Add test for the bug.
2013         Reported by Al Viro <aviro@redhat.com>.
2015         * stdio-common/Makefile (tests): Add bug14.
2016         * stdio-common/bug14.c: New file.
2018         * stdio-common/vfscanf.c: When recognizing multibyte characters in
2019         string reset the byte counter after mbrtowc reported it is not a
2020         partial character.  Reported by Al Viro <aviro@redhat.com>.
2022 2003-01-15  Steven Munroe  <sjmunroe@us.ibm.com>
2024         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Include
2025         sysdep-cancel.h, not sysdep.h.
2027 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
2029         * nscd/connections.c (nscd_run): Protect accept call with
2030         TEMP_FAILURE_RETRY.
2032 2003-01-15  Andreas Schwab  <schwab@suse.de>
2034         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-bp.d.
2035         (common-generated): Add s-proto-bp.d.
2036         * sysdeps/unix/make-syscalls.sh: Use s-proto-bp.d for dependencies
2037         of bp thunks.
2038         * sysdeps/unix/s-proto-bp.S: New file.
2039         * sysdeps/generic/bp-thunks.h: Don't include <sys/vm86.h> here.
2040         Use <io/sys/sendfile.h> instead of <sys/sendfile.h>.
2041         * sysdeps/unix/sysv/linux/i386/bp-thunks.h: New file.
2043 2003-01-15  Roland McGrath  <roland@redhat.com>
2045         * Makerules: Use -include for tls.make, suppresses warning.
2046         Move gen-as-const-headers rules up so before-compile is set in time.
2047         (sed-remove-dotdot): Fix to work right for subdirs or top dir.
2049 2003-01-15  Ulrich Drepper  <drepper@redhat.com>
2051         * nscd/nscd.c (main): Make code to close all file descriptors
2052         faster and more robust.
2054         * nscd/nscd_getpw_r.c (nscd_getpw_r): Consolidate writing of the
2055         request with one writev call.  Protect all read calls with
2056         TEMP_FAILURE_RETRY.
2057         * nscd/nscd_getgr_r.c (nscd_getgr_r): Likewise.
2058         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
2060         * nscd/hstcache.c: Use extend_alloca to reallocate alloca'd buffer.
2061         Protect writev calls with TEMP_FAILURE_RETRY.
2062         * nscd/grpcache.c: Likewise.
2063         * nscd/pwdcache.c: Likewise.
2065         * nscd/hstcache.c (addhstbynamev6): Don't interpret hostname as
2066         IPv6 address in debug output.
2068 2003-01-14  Roland McGrath  <roland@redhat.com>
2070         * Makerules (check-abi-%): Use two rules for $(common-objpfx) and
2071         $(objpfx) directories, and get rid of vpath directives.  The previous
2072         arrangement resulted in files being written to the source directories
2073         when run in a clean build.  Find all .abilist files in $(..)abilist/.
2074         (update-abi-%): Likewise.
2075         (generated): Don't add .symlist files, they'll be intermediates.
2077         * sysdeps/generic/init-first.c: Add a comment.
2079         * elf/Makefile ($(objpfx)ld.so): Pass -z defs in link.
2081         * scripts/gen-as-const.awk: Grok lone "--" as a separator between
2082         #includes and expressions.
2084         * scripts/merge-abilist.awk: Omit cpu-.*-os.*/modifier from merged
2085         config list when it already contains cpu-.*-os.* without / part.
2087         * Makerules (sed-remove-dotdot): New variable.
2088         ($(common-objpfx)%.make): Use it.  Depend on $(before-compile).
2089         ($(common-objpfx)%.h $(common-objpfx)%.h.d): Likewise.
2090         (check-abi-config): New variable, append /tls or /notls to the tuple.
2091         (check-abi-%): Use that for -v config value.
2092         Find .abilist files in abilist/libfoo.abilist, not in subdir.
2093         * Rules: Move bits/stdio_lim.h generation rules to Makerules.
2095 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
2097         * manual/install.texi: Correct description of header preparation for
2098         Linux build.  Patch by mhwood@Ameritech.Net [PR libc/4941].
2100 2003-01-14  Guido Guenther  <agx@sigxcpu.org>
2102         * sysdeps/unix/sysv/linux/mips/sysdep.h (INTERNAL_SYSCALL,
2103         INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
2104         INTERNAL_SYSCALL_ERROR_P, INLINE_SYSCALL): Define.
2106 2003-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
2108         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
2109         (INTERNAL_SYSCALL): Make use of ERR parameter.
2110         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
2111         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
2112         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
2113         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S: New file.
2115 2003-01-14  Ulrich Drepper  <drepper@redhat.com>
2117         * sunrpc/pm_getport.c (pmap_getport): Open TCP socket if protocol
2118         == IPPROTO_TCP.
2119         Patch by James Strandboge <jamie@tpptraining.com> [PR libc/4943].
2121         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c (_dl_x86_cap_flags):
2122         Fix entry for bit 31.
2124         * iconvdata/Makefile: Add rules to build IBM866NAV.
2125         * iconvdata/ibm866nav.c: New file.
2126         * iconvdata/tst-tables.sh: Add IBM866NAV.
2127         * iconvdata/gconv-modules: Add entries for IBM866NAV.
2129 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
2131         * string/tester.c (test_strcpy): Use the previously #if 0'ed code
2132         to test void* parameters.
2134         * sysdeps/i386/i486/bits/string.h (__STRING_SMALLL_GET16): Cast
2135         source pointer before dereferencing.
2136         (__STRING_SMALLL_GET32): Likewise.
2137         (__memset_gc): Add missing parenthesis around macro arguments.
2138         Patch by Denis Zaitsev <zzz@cd-club.ru>.
2140         * sysdeps/i386/i486/bits/string.h (__strspn_cg): Tell the compiler
2141         that %eax is modified.  Reported by Denis Zaitsev <zzz@cd-club.ru>.
2143 2003-01-14  Jakub Jelinek  <jakub@redhat.com>
2145         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL): Undefined before
2146         defining.
2148 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2150         * sysdeps/s390/s390-64/initfini.c: Avoid unterminated string literals.
2151         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (L): Don't define it
2152         here.
2153         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (L): Likewise.
2155 2003-01-13  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2157         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Move branch instructions
2158         from here...
2159         (PSEUDO): ... to here.
2160         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Move branch instruction
2161         from here...
2162         (PSEUDO): ... to here.
2164 2003-01-13  Ulrich Drepper  <drepper@redhat.com>
2166         * locale/programs/charmap-dir.c (charmap_readdir): Use struct
2167         dirent64 instead of struct dirent for dirent.  Call readdir64
2168         instead of readdir.
2170         * locale/programs/locfile.c (siblings_uncached): Use struct
2171         dirent64 instead of struct dirent for other_dentry.  Call
2172         readdir64 instead of readdir.
2174         * elf/ldconfig.c (direntry): Change type to struct dirent64.
2175         (search_dir): Use readdir64 instead of readdir.
2176         Patch by Zhangfan Xing <xing@pacific.jpl.nasa.gov>.
2178 2003-01-12  Roland McGrath  <roland@redhat.com>
2180         * hurd/lookup-retry.c (__hurd_file_name_lookup_retry): Use strtoul,
2181         not strtol.  The former is usable in ld.so, the latter not.
2183         * include/fcntl.h: Declare __libc_creat.
2185         * sysdeps/mach/hurd/Makefile (libmachuser-link.so-no-z-defs,
2186         libhurduser-link.so-no-z-defs): New variables.
2188         * malloc/malloc.c: Revert last change.
2189         * malloc/malloc.h (_int_*): Move these decls to ...
2190         * include/malloc.h: ... here.  Add attribute_hidden.
2191         (_int_valloc): Declare it too.
2193 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2195         * elf/dl-close.c (_dl_close): Fix typo, must be == not = in
2196         search for removed searchlist.  Reported by Roland McGrath.
2198         * io/ftwtest-sh: Add test for case of symlink to nonexisting file
2199         given as start file.
2201         * io/ftw.c (ftw_startup): Use correct name in check for symlink
2202         without existing target.  Patch by Jim Meyering.
2204         * Makerules (build-shlib-helper): Don't use -z defs linker option
2205         if no-z-defs is defined either.
2207 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2209         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Remove unused
2210         file.
2212 2003-01-10  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2214         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Add vfork.
2215         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
2217 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2219         * io/ftwtest-sh: Add test case for relative path with /. at the end.
2221 2003-01-12  Jim Meyering  <jim@meyering.net>
2223         * io/ftw.c (ftw_startup): When trying to stat the starting directory,
2224         use the basename if we've already chdir'd into its parent directory.
2226 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2228         * io/ftw.c (process_entry): Use relative path when using chdir()
2229         to change directory after call to ftw_dir.
2230         * io/ftwtest-sh: Add test for relative path argument to nftw()
2231         with FTW_CHDIR option.
2233 2002-01-12  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2235         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
2236         Define for powerpc.
2237         * sysdeps/unix/sysv/linux/powerpc/syscall.S: Take register alignment
2238         into account.
2239         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
2240         (INTERNAL_SYSCALL): Make use of ERR parameter.
2241         (INTERNAL_SYSCALL_DECL, INTERNAL_SYSCALL_ERRNO,
2242         INTERNAL_SYSCALL_ERROR_P): Adjust accordingly.
2243         (INLINE_SYSCALL): Make use of INTERNAL_SYSCALL.
2244         * sysdeps/unix/sysv/linux/powerpc/powerpc32/vfork.S: New file.
2246 2002-01-09  Richard Henderson  <rth@redhat.com>
2248         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Compute
2249         DTPREL64 and TPREL64 without loadbase applied.
2251 2002-01-09  Richard Henderson  <rth@redhat.com>
2253         * sysdeps/unix/alpha/sysdep.S: Use correct definition of errno
2254         for NOT_IN_libc.
2256         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Move inline syscall bits...
2257         * sysdeps/unix/alpha/sysdep.h: ... here.
2258         (PSEUDO_LOADGP): Remove.
2259         (PSEUDO_PROLOGUE): Load GP in non-pic case.
2260         (SYSCALL_ERROR_LABEL): New.
2261         (PSEUDO): Use it in error branch.
2262         (PSEUDO_END): Add $syscall_error label.
2264 2003-01-12  Andreas Jaeger  <aj@suse.de>
2266         * math/bits/mathcalls.h: Round is a const function.
2268 2003-01-11  Jim Meyering  <jim@meyering.net>
2270         * io/ftw.c [HAVE_CONFIG_H]: Include <config.h>.
2271         [HAVE_SYS_PARAM_H || _LIBC]: Guard inclusion of <sys/param.h>.
2272         Include <sys/stat.h>, not <include/sys/stat.h>, if !_LIBC.
2273         [!_LIBC] (__chdir, __closedir, __fchdir, __getcwd, __opendir): Define.
2274         [!_LIBC] (__readdir64, __tdestroy, __tfind, __tsearch): Define.
2275         [!_LIBC] (internal_function, dirent64, MAX): Define.
2276         (__set_errno): Define if not already defined.
2277         (open_dir_stream): When FTW_CHDIR is enabled, invoke opendir on
2278         the basename, not the entire file name.
2279         (process_entry): When FTW_CHDIR is enabled, invoke XSTAT or LXSTAT on
2280         the basename, not the entire file name.
2282 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2284         * string/tester.c (test_strcpy): Disable last added strcpy until
2285         it is fixed.
2287 2003-01-11  Philip Blundell  <philb@gnu.org>
2289         * sysdeps/unix/sysv/linux/arm/socket.S: Add cancellation support.
2291 2003-01-11  Andreas Schwab  <schwab@suse.de>
2293         * Makerules: Add vpath for %.dynsym and %.so so that the
2294         implicit rule chaining for check-abi works.
2296 2003-01-11  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2298         * sysdeps/unix/sysv/linux/sh/sysdep.h (SYSCALL_ERROR_HANDLER):
2299         Add non-PIC case.
2301 2003-01-11  Jakub Jelinek  <jakub@redhat.com>
2303         * elf/tls-macros.h [__ia64__] (__TLS_CALL_CLOBBERS): Define.
2304         [__ia64__] (TLS_LE, TLS_IE): Fix typos.  Add ;; at start of asm if
2305         gp is used early.
2306         [__ia64__] (TLS_LD, TLS_GD): Likewise.  Use __TLS_CALL_CLOBBERS.
2307         * elf/Makefile ($(objpfx)tst-tlsmod5.so, $(objpfx)tst-tlsmod6.so):
2308         Ensure libc.so in DT_NEEDED.
2309         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Move
2310         CHECK_STATIC_TLS before l_tls_offset use.
2311         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
2312         Likewise.
2313         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
2314         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage) [TLS_DTV_AT_TP]:
2315         Allocate TLS_PRE_TCB_SIZE bytes below result.
2316         (_dl_deallocate_tls) [TLS_DTV_AT_TP]: Adjust before freeing.
2317         * sysdeps/generic/libc-tls.c (__libc_setup_tls): If
2318         TLS_INIT_TP_EXPENSIVE is not defined, allocate even if no PT_TLS
2319         segment has been found.  If TLS_DTV_AT_TP, allocate TLS_PRE_TCB_SIZE
2320         bytes below result and add tcb_offset to memsz.
2321         * sysdeps/ia64/dl-tls.h (__tls_get_addr): New prototype.
2322         * sysdeps/ia64/dl-machine.h: Include tls.h.
2323         (elf_machine_type_class): Return ELF_RTYPE_CLASS_PLT for TLS relocs
2324         too.
2325         (elf_machine_rela): Assume if sym_map != NULL sym is non-NULL too.
2326         Handle R_IA64_DTPMOD*, R_IA64_DTPREL* and R_IA64_TPREL* relocations.
2327         * sysdeps/ia64/libc-tls.c: New file.
2329 2003-01-10  Steven Munroe  <sjmunroe@us.ibm.com>
2331         * sysdeps/powerpc/powerpc64/sysdep.h (PSEUDO_RET): Add branch hit.
2332         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h (STAT_VER_LINUX):
2333         Fix type.  Move definition out of #if.
2334         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: New file.
2335         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread.c: New file.
2336         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pread64.c: New file.
2337         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite.c: New file.
2338         * sysdeps/unix/sysv/linux/powerpc/powerpc64/pwrite64.c: New file.
2339         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S: Add cancellation
2340         support.
2341         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Remove
2342         ftruncate64, pread64, pwrite64, truncate64 entries.
2343         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h
2344         (INLINE_SYSCALL): New version that supports function call like
2345         syscalls.  Add __builtin_expect.
2346         (LOADARGS_n): Add argument size safety checks.
2347         (INTERNAL_SYSCALL): New Macro.
2348         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: New file.
2349         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [__PPC_ELF_H]: Avoid
2350         redefinition of elf_fpreg_t and elf_fpregset_t.
2352 2003-01-12  Ulrich Drepper  <drepper@redhat.com>
2354         * elf/dl-close.c (_dl_close): Add several asserts.  Correct and
2355         simplify test for unloading.  If loader of a DSO is unloaded do not
2356         use its scope anymore.  Fall back to own scope and adjust opencounts.
2357         Fix several comments.
2358         * elf/dl-deps.c (_dl_map_object_deps): Always allocate memory for
2359         the l_searchlist, not only for l_initfini.
2361         * elf/dl-lookup.c (add_dependencies): Avoid creating relocation
2362         dependencies if objects cannot be removed.  Remove object with the
2363         definition as not unloadable if necessary.
2365         * elf/reldep6.c: Create relocation dependency before closing the first
2366         module.
2368 2003-01-10  Guido Günther  <agx@sigxcpu.org>
2370         * sysdeps/unix/mips/fork.S: Add PSEUDO_END.
2371         * sysdeps/unix/mips/brk.S: Likewise.
2372         * sysdeps/unix/mips/pipe.S: Likewise.
2374 2003-01-10  Andreas Schwab  <schwab@suse.de>
2376         * sysdeps/unix/sysv/linux/m68k/getsysstats.c: New file.
2378         * sysdeps/unix/sysv/linux/m68k/vfork.S: Optimize for kernels which
2379         are known to have the vfork syscall.
2381         * sysdeps/m68k/sysdep.h (JUMPTARGET): Undefine before defining it.
2383         * sysdeps/unix/sysv/linux/kernel-features.h
2384         (__ASSUME_MMAP2_SYSCALL, __ASSUME_TRUNCATE64_SYSCALL)
2385         (__ASSUME_STAT64_SYSCALL, __ASSUME_FCNTL64)
2386         (__ASSUME_VFORK_SYSCALL): Define for m68k kernels >= 2.4.12.
2388 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
2390         * elf/Makefile: Add rules to build and run reldep9 test.
2391         * elf/reldep9.c: New file.
2392         * elf/reldep9mod1.c: New file.
2393         * elf/reldep9mod2.c: New file.
2394         * elf/reldep9mod3.c: New file.
2396 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
2398         * elf/Makefile: Add rules to build and run nodelete2 test.
2399         * elf/nodelete2.c: New file.
2400         * elf/nodel2mod1.c: New file.
2401         * elf/nodel2mod2.c: New file.
2402         * elf/nodel2mod3.c: New file.
2404 2003-01-09  Jakub Jelinek  <jakub@redhat.com>
2406         * posix/test-vfork.c (noop): Add __attribute_noinline__.
2407         * sysdeps/generic/sysdep.h (JUMPTARGET): Define if not defined.
2408         * sysdeps/i386/sysdep.h (JUMPTARGET): Undefine JUMPTARGET before
2409         defining it.
2410         * sysdeps/powerpc/powerpc32/sysdep.h (JUMPTARGET): Likewise.
2411         * sysdeps/powerpc/powerpc64/sysdep.h (JUMPTARGET): Likewise.
2412         * sysdeps/s390/s390-32/sysdep.h (JUMPTARGET): Likewise.
2413         * sysdeps/s390/s390-64/sysdep.h (JUMPTARGET): Likewise.
2414         * sysdeps/x86_64/sysdep.h (JUMPTARGET): Likewise.
2416 2003-01-09  Andreas Schwab  <schwab@suse.de>
2418         * sysdeps/m68k/fpu/libm-test-ulps: Regenerated.
2420 2003-01-08  Ulrich Drepper  <drepper@redhat.com>
2422         * sysdeps/unix/sysv/linux/arm/sysdep.h (INTERNAL_SYSCALL,
2423         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
2424         argument.
2425         (INTERNAL_SYSCALL_DECL): Define.
2427 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
2429         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INTERNAL_SYSCALL,
2430         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Add err
2431         argument.
2432         (INTERNAL_SYSCALL_DECL): Define.
2433         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Likewise.
2434         * sysdeps/unix/sysv/linux/sparc/sysdep.h: Likewise.
2435         * sysdeps/unix/sysv/linux/i386/sysdep.h: Likewise.
2436         (INLINE_SYSCALL): Adjust.
2437         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h: Likewise.
2438         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h: Likewise.
2439         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Likewise.
2440         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
2441         * elf/dl-misc.c (_dl_debug_vdprintf): Add INTERNAL_SYSCALL_DECL,
2442         add err argument to INTERNAL_SYSCALL* macros.
2443         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Likewise.
2444         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Likewise.
2445         * sysdeps/unix/sysv/linux/m68k/brk.c (__brk): Likewise.
2446         * sysdeps/unix/sysv/linux/m68k/getpagesize.c  (__getpagesize):
2447         Likewise.
2448         * sysdeps/unix/sysv/linux/sigwait.c (do_sigwait): Likewise.
2449         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Use
2450         INLINE_SYSCALL instead of INTERNAL_SYSCALL and setting errno.
2452 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
2454         Unify symbols in user namespace exported by libc.so and libc.a.
2455         * argp/argp-fmtstream.c: Don't define argp_make_fmtstream,
2456         argp_fmtstream_free, and argp_fmtstream_printf.
2457         * argp/argp-fs-xinl.c: Don't define argp_fmtstream_putc,
2458         argp_fmtstream_puts, argp_fmtstream_write, argp_fmtstream_set_lmargin,
2459         argp_fmtstream_set_rmargin, argp_fmtstream_set_wmargin, and
2460         argp_fmtstream_point.
2461         * gmon/gmon.c: Don't define write_profiling.
2462         * libio/genops.c: Don't define _cleanup.
2464         * intl/explodename.c (_nl_find_language.c): Mark as static.
2465         * intl/loadinfo.h: Remove _nl_find_language prototype.
2467         * libio/fileops.c (_IO_file_seekoff_maybe_mmap): Mark as static.
2468         * libio/libioP.h: Remove declaration.
2470         * libio/iopopen.c (_IO_proc_jumps): Mark as static.
2471         * libio/libioP.h: Remove declaration.
2473         * sysdeps/generic/unwind-dw2.c: Mark __frame_state_for with STATIC.
2474         * sysdeps/generic/framestate.c: Define STATIC before including
2475         unwind-dw2.c.
2477         * time/Versions [GLIBC_2.3.2] (libc): Export strptime_l.
2479 2003-01-06  Philip Blundell  <philb@gnu.org>
2481         * sysdeps/unix/arm/sysdep.S (syscall_error): Optimise a little.
2482         [__LIBC_REENTRANT]: Unify PIC and non-PIC cases.
2484         * sysdeps/unix/sysv/linux/arm/sysdep.h (PSEUDO): Remove .type
2485         directive.
2486         (PSEUDO_RET): Use SYSCALL_ERROR in place of __syscall_error.
2487         (SYSCALL_ERROR): New.
2488         (SYSCALL_ERROR_HANDLER) [NOT_IN_libc]: Provide local copy of error
2489         handling code.
2490         (INTERNAL_SYSCALL): Define.
2491         (INLINE_SYSCALL): Use it.
2492         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
2493         * sysdeps/unix/sysv/linux/arm/socket.S (__socket): Use
2494         SYSCALL_ERROR in place of __syscall_error.
2496 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
2498         * sysdeps/ia64/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
2499         __bswap_32, __bswap_64): Put x into temporary variable
2500         to avoid warnings.
2501         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
2502         (inline) functions.
2503         * sysdeps/s390/bits/byteswap.h [__GNUC__ >= 2] (__bswap_16,
2504         __bswap_32, __bswap_64): Put x into temporary variable
2505         to avoid warnings.
2506         [!__GNUC__] (__bswap_16, __bswap_32, __bswap_64): Change into static
2507         (inline) functions.
2508         * sysdeps/i386/bits/byteswap.h [!__GNUC__] (__bswap_16, __bswap_32):
2509         Likewise.
2511 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
2513         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ntp_adjtime): New weak
2514         alias.
2516 2003-01-07  Jakub Jelinek  <jakub@redhat.com>
2518         * elf/rtld.c (_rtld_global): Remove _dl_dynamic_weak initializer.
2519         * elf/dl-support.c (_dl_dynamic_weak): Initialize to 0.
2521 2003-01-07  Ulrich Drepper  <drepper@redhat.com>
2523         * math/libm-test.inc (significand_test): New function.
2524         (main): Call it.
2526 2003-01-06  Roland McGrath  <roland@redhat.com>
2528         * sysdeps/i386/i486/bits/string.h (memset): Add parens around macro
2529         arguments.
2530         (memcpy, memrchr, strcpy, __stpcpy, strncpy, strcat): Likewise.
2531         (strcmp, strncat, strncmp, strchr, __strchrnul, strchrnul): Likewise.
2532         (index, strrchr, rindex, strcspn, strspn, strpbrk, strstr): Likewise.
2534         * string/tester.c (test_strcpy): Add test with `void *' arguments.
2536 2003-01-06  Ulrich Drepper  <drepper@redhat.com>
2538         * sysdeps/i386/fpu/s_significandl.c (__significandl): Really
2539         return significand and not the exponent.
2540         Reported by Nelson H. F. Beebe <beebe@math.utah.edu>.
2542         * elf/dl-misc.c (_dl_debug_vdprintf): Help PPC port by explicitly
2543         taking address of iov in INTERNAL_SYSCALL call.  Patch by Franz Sirl.
2545         * malloc/malloc.c: Mark all _int_* functions as static.
2547 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
2549         * sysdeps/unix/alpha/sysdep.h (PSEUDO): Use PSEUDO_PREPARE_ARGS.
2550         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Add cancellation
2551         handling.
2552         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
2554 2003-01-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2556         * sysdeps/powerpc/powerpc32/sysdep.h (PSEUDO_RET): Add branch hint.
2557         * sysdeps/unix/sysv/linux/powerpc/powerpc32/socket.S: Add cancellation
2558         support.
2559         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Remove
2560         ftruncate64, truncate64, pread64 and pwrite64 entries.
2561         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
2562         (INLINE_SYSCALL): Add __builtin_expect.
2563         (LOADARGS_n): Add argument size safety checks.
2564         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ftruncate64.c: New file.
2565         * sysdeps/unix/sysv/linux/powerpc/powerpc32/truncate64.c: New file.
2566         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread.c: New file.
2567         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pread64.c: New file.
2568         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite.c: New file.
2569         * sysdeps/unix/sysv/linux/powerpc/powerpc32/pwrite64.c: New file.
2571 2003-01-06  Jakub Jelinek  <jakub@redhat.com>
2573         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_HANDLED): Define.
2574         * sysdeps/generic/creat.c: Include sysdep-cancel.h.
2575         (LIBC_CANCEL_HANDLED): Add.
2577         * sysdeps/unix/sysv/linux/alpha/sysdep.h
2578         (inline_syscall_r0_constraint): Rename to...
2579         (inline_syscall_r0_out_constraint): ... this.  Add =.
2580         (inline_syscall[0-6]): Use inline_syscall_r0_out_constraint.
2582 2003-01-06  Andreas Schwab  <schwab@suse.de>
2584         * sysdeps/m68k/dl-machine.h (elf_machine_runtime_setup): Make
2585         sure this is always inlined.
2586         (elf_machine_rela): Likewise.
2588         * sysdeps/m68k/Makefile (sysdep-CFLAGS): Increase inline limit.
2590 2003-01-04  Roland McGrath  <roland@redhat.com>
2592         * Makeconfig (+mkdep): Add -MP flag.
2593         Suggested by Art Haas <ahaas@airmail.net>.
2595 2003-01-05  Andreas Schwab  <schwab@suse.de>
2597         * sysdeps/m68k/Makefile (CFLAGS-.oS): Append -fPIC.
2599 2003-01-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2601         * sysdeps/unix/sysv/linux/sh/clone.S (__clone): Use
2602         SYSCALL_ERROR_HANDLER.
2603         * sysdeps/unix/sysv/linux/sh/pipe.S (__libc_pipe): Likewise.
2604         * sysdeps/unix/sysv/linux/sh/socket.S (__socket): Likewise.
2605         Add support for cancellation handling.
2606         * sysdeps/unix/sysv/linux/sh/syscall.S (__syscall): Use
2607         SYSCALL_ERROR_HANDLER.
2608         * sysdeps/unix/sysv/linux/sh/vfork.S (__vfork): Likewise.
2609         * sysdeps/unix/sysv/linux/sh/sysdep.h (PSEUDO): Likewise.
2610         Add support for cancellation handling.
2611         (SYSCALL_ERROR_HANDLER): Define PIC variants.
2613 2003-01-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
2615         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Mark
2616         __syscall_pread64 and __syscall_pwrite64 cancelable.
2617         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h
2618         (INTERNAL_SYSCALL): New macro.
2619         (LOADARGS_0, LOADARGS_1): Fix.
2621 2003-01-05  Ulrich Drepper  <drepper@redhat.com>
2623         * Makerules (build-shlip-helper): Unless told otherwise, add
2624         -Wl,-z,defs to linker command line.
2625         * rt/Makefile (librt.so): Link with ld.so.
2626         * dlfcn/Makefile (libdl.so): Likewise.
2628 2003-01-05  Jakub Jelinek  <jakub@redhat.com>
2630         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S: Add support for
2631         cancellation handling.
2632         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S: Likewise.
2633         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c: Likewise.
2635 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
2637         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Correct
2638         order of parameters passed to kill.
2640 2003-01-04  Andreas Schwab  <schwab@suse.de>
2642         * sysdeps/unix/sysv/linux/m68k/bits/stat.h: Add nanosecond fields.
2644 2002-01-03  Paul Eggert  <eggert@twinsun.com>
2646         * malloc/obstack.h (__INT_TO_PTR) [__STDC__]: Cast result to
2647         (void *) to avoid diagnostic with native c89 on SGI IRIX 6.5
2648         when compiling Bison 1.875's `bitset bset = obstack_alloc
2649         (bobstack, bytes);'.  Problem reported by Nelson H. F. Beebe.
2651 2003-01-04  Ulrich Drepper  <drepper@redhat.com>
2653         * sysdeps/posix/system.c (do_system): Minor optimizations.  Remove
2654         unnecessary code.
2655         Correct reference counter in case SIGQUIT handler installation failed.
2657 2003-01-03  Ulrich Drepper  <drepper@redhat.com>
2659         * include/libc-symbols.h [HAVE_WEAK_SYMBOLS] (_weak_extern):
2660         Define using _Pragma(weak ...).
2662 2003-01-03  Andreas Jaeger  <aj@suse.de>, Jakub Jelinek <jakub@redhat.com>
2664         * resolv/res_libc.c: Provide declaration for __res_init_weak and
2665         reorder declarations.
2667 2003-01-03  Art Haas  <ahaas@airmail.net>
2669         * localedata/tests-mbwc/dat_iswalnum.c: Convert GCC extension
2670         initializer syntax to C99.
2671         * localedata/tests-mbwc/dat_iswalpha.c: Likewise.
2672         * localedata/tests-mbwc/dat_iswcntrl.c: Likewise.
2673         * localedata/tests-mbwc/dat_iswctype.c: Likewise.
2674         * localedata/tests-mbwc/dat_iswdigit.c: Likewise.
2675         * localedata/tests-mbwc/dat_iswgraph.c: Likewise.
2676         * localedata/tests-mbwc/dat_iswlower.c: Likewise.
2677         * localedata/tests-mbwc/dat_iswprint.c: Likewise.
2678         * localedata/tests-mbwc/dat_iswpunct.c: Likewise.
2679         * localedata/tests-mbwc/dat_iswspace.c: Likewise.
2680         * localedata/tests-mbwc/dat_iswupper.c: Likewise.
2681         * localedata/tests-mbwc/dat_iswxdigit.c: Likewise.
2682         * localedata/tests-mbwc/dat_mblen.c: Likewise.
2683         * localedata/tests-mbwc/dat_mbrlen.c: Likewise.
2684         * localedata/tests-mbwc/dat_mbrtowc.c: Likewise.
2685         * localedata/tests-mbwc/dat_mbsrtowcs.c: Likewise.
2686         * localedata/tests-mbwc/dat_mbstowcs.c: Likewise.
2687         * localedata/tests-mbwc/dat_mbtowc.c: Likewise.
2688         * localedata/tests-mbwc/dat_strcoll.c: Likewise.
2689         * localedata/tests-mbwc/dat_strfmon.c: Likewise.
2690         * localedata/tests-mbwc/dat_strxfrm.c: Likewise.
2691         * localedata/tests-mbwc/dat_swscanf.c: Likewise.
2692         * localedata/tests-mbwc/dat_towctrans.c: Likewise.
2693         * localedata/tests-mbwc/dat_towlower.c: Likewise.
2694         * localedata/tests-mbwc/dat_towupper.c: Likewise.
2695         * localedata/tests-mbwc/dat_wcrtomb.c: Likewise.
2696         * localedata/tests-mbwc/dat_wcscat.c: Likewise.
2697         * localedata/tests-mbwc/dat_wcschr.c: Likewise.
2698         * localedata/tests-mbwc/dat_wcscmp.c: Likewise.
2699         * localedata/tests-mbwc/dat_wcscoll.c: Likewise.
2700         * localedata/tests-mbwc/dat_wcscpy.c: Likewise.
2701         * localedata/tests-mbwc/dat_wcscspn.c: Likewise.
2702         * localedata/tests-mbwc/dat_wcslen.c: Likewise.
2703         * localedata/tests-mbwc/dat_wcsncat.c: Likewise.
2704         * localedata/tests-mbwc/dat_wcsncmp.c: Likewise.
2705         * localedata/tests-mbwc/dat_wcsncpy.c: Likewise.
2706         * localedata/tests-mbwc/dat_wcspbrk.c: Likewise.
2707         * localedata/tests-mbwc/dat_wcsrtombs.c: Likewise.
2708         * localedata/tests-mbwc/dat_wcsspn.c: Likewise.
2709         * localedata/tests-mbwc/dat_wcsstr.c: Likewise.
2710         * localedata/tests-mbwc/dat_wcstod.c: Likewise.
2711         * localedata/tests-mbwc/dat_wcstok.c: Likewise.
2712         * localedata/tests-mbwc/dat_wcstombs.c: Likewise.
2713         * localedata/tests-mbwc/dat_wcswidth.c: Likewise.
2714         * localedata/tests-mbwc/dat_wcsxfrm.c: Likewise.
2715         * localedata/tests-mbwc/dat_wctob.c: Likewise.
2716         * localedata/tests-mbwc/dat_wctomb.c: Likewise.
2717         * localedata/tests-mbwc/dat_wctrans.c: Likewise.
2718         * localedata/tests-mbwc/dat_wctype.c: Likewise.
2719         * localedata/tests-mbwc/dat_wcwidth.c: Likewise.
2721 2003-01-03  Richard Henderson  <rth@redhat.com>
2723         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall_r0_asm): New.
2724         (inline_syscall_r0_constraint): New.
2725         (inline_syscall[0-6]): Use them.
2727 2003-01-03  Jakub Jelinek  <jakub@redhat.com>
2729         * sysdeps/generic/ldsodefs.h (_dl_allocate_tls, _dl_deallocate_tls):
2730         Add rtld_hidden_proto.
2731         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls): Add rtld_hidden_def.
2732         (_dl_allocate_tls): Likewise.  Remove INTDEF.
2734 2002-07-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
2736         * sysdeps/sh/memcpy.S: Optimize.  Based on a patch by Toshiyasu
2737         Morita <toshiyasu.morita@hsa.hitachi.com>.
2738         * sysdeps/sh/memcpy.S: Likewise.
2740 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
2742         * sysdeps/pthread/aio_suspend.c (aio_suspend): Don't quite remove
2743         any, but unify the test.
2745 2003-01-02  Jakub Jelinek  <jakub@redhat.com>
2747         * sysdeps/unix/sysv/linux/arm/sigaction.c (__sigaction,
2748         sigaction): Protect weak_alias and libc_hidden_weak with
2749         #ifndef LIBC_SIGACTION.
2750         * sysdeps/unix/sysv/linux/ia64/sigaction.c (__sigaction,
2751         sigaction): Likewise.
2752         * sysdeps/unix/sysv/linux/mips/sigaction.c (__sigaction,
2753         sigaction): Likewise.
2754         * sysdeps/unix/sysv/linux/s390/s390-64/sigaction.c (__sigaction,
2755         sigaction): Likewise.
2756         * sysdeps/unix/sysv/linux/sparc/sparc32/sigaction.c (__sigaction,
2757         sigaction): Likewise.
2758         * sysdeps/unix/sysv/linux/sparc/sparc64/sigaction.c (__sigaction,
2759         sigaction): Likewise.
2760         * sysdeps/unix/sysv/linux/x86_64/sigaction.c (__sigaction,
2761         sigaction): Likewise.
2762         * sysdeps/unix/sysv/linux/i386/sigaction.c (__sigaction,
2763         sigaction): Likewise.  Remove SIGCANCEL handling here.
2764         * sysdeps/unix/sysv/linux/sigaction.c (__sigaction, sigaction):
2765         Likewise.
2767 2003-01-02  Art Haas  <ahaas@airmail.net>
2769         * login/tst-utmp.c: Convert GCC extension initializer syntax to C99.
2771 2003-01-02  Ulrich Drepper  <drepper@redhat.com>
2773         * posix/getconf.c: Update copyright year.
2774         * nss/getent.c: Likewise.
2775         * nscd/nscd_nischeck.c: Likewise.
2776         * iconv/iconvconfig.c: Likewise.
2777         * iconv/iconv_prog.c: Likewise.
2778         * elf/ldconfig.c: Likewise.
2779         * catgets/gencat.c: Likewise.
2780         * csu/version.c: Likewise.
2781         * elf/ldd.bash.in: Likewise.
2782         * elf/sprof.c (print_version): Likewise.
2783         * locale/programs/locale.c: Likewise.
2784         * locale/programs/localedef.c: Likewise.
2785         * nscd/nscd.c (print_version): Likewise.
2786         * debug/xtrace.sh: Likewise.
2787         * malloc/memusage.sh: Likewise.
2788         * malloc/mtrace.pl: Likewise.
2790 2003-01-01  Jakub Jelinek  <jakub@redhat.com>
2792         * io/sys/stat.h: Include time.h with __need_timespec even if
2793         __USE_MISC is defined but __USE_XOPEN is not.
2795 2003-01-01  Andreas Jaeger  <aj@suse.de>
2797         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Use union
2798         type to avoid strict aliasing problem.
2799         (_nss_dns_gethostbyname2_r): Likewise.
2800         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
2801         (_nss_dns_getnetbyname_r): Likewise.
2802         * resolv/gethnamaddr.c (_gethtent): Likewise.
2803         (gethostbyname2): Likewise.
2805 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2807         * string/string-inlines.c: Define __memcpy_g and __strchr_g macros
2808         to avoid using the exported symbols.  Define aliases with the
2809         original names separately.
2811         * include/time.h: Add libc_hidden_proto for __strftime_l.
2812         * include/wchar.h: Add libc_hidden_proto for __wcsftime_l.
2813         * time/strftime.c: Always use libc_hidden_def if _LIBC.
2815         * libio/libioP.h: Add libc_hidden_proto for _IO_file_open.
2816         * libio/fileops.c: Add libc_hidden_def for _IO_file_open.
2818         * malloc/mtrace.c: Add libc_hidden_proto and libc_hidden_def for
2819         tr_break.
2821         * csu/Makefile (routines): Add dso_handle.
2822         * csu/dso_handle.c: New file.
2824 2002-12-31  Roland McGrath  <roland@redhat.com>
2826         * Makerules (compile.S, COMPILE.S): Remove -DASSEMBLER here.
2827         Use $(S-CPPFLAGS) in place of $(asm-CPPFLAGS).
2828         (S-CPPFLAGS): Add -DASSEMBLER here instead.
2829         (generate-md5, +make-deps): Fix magic to get $(S-CPPFLAGS).
2831 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2833         * malloc/thread-m.h [SHARED] (thread_atfork): Assume __dso_handle
2834         is available.
2836 2002-12-31  Andreas Jaeger  <aj@suse.de>
2838         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Sync
2839         with Linux kernel.
2840         * sysdeps/unix/sysv/linux/sparc/sparc32/kernel_stat.h: Likewise.
2841         * sysdeps/unix/sysv/linux/s390/s390-64/kernel_stat.h: Likewise.
2842         * sysdeps/unix/sysv/linux/hppa/kernel_stat.h: Likewise.
2844         * sysdeps/unix/sysv/linux/kernel_stat.h
2845         (_HAVE_STAT_NSEC,_HAVE_STAT_NSEC64): New.
2847         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Re-add
2848         __unused[1-3] since they're needed by some platforms.  Handle
2849         _HAVE_STAT_NSEC and _HAVE_STAT_NSEC64.
2851         * sysdeps/unix/sysv/linux/x86_64/bits/stat.h: Add nsec resolution
2852         for structs stat and stat64.
2853         * sysdeps/unix/sysv/linux/ia64/bits/stat.h: Likewise.
2854         * sysdeps/unix/sysv/linux/powerpc/bits/stat.h: Likewise.
2855         * sysdeps/unix/sysv/linux/sparc/bits/stat.h: Likewise.
2856         * sysdeps/unix/sysv/linux/s390/bits/stat.h: Likewise.
2858         * io/sys/stat.h [__USE_MISC]: Define __need_timespec for struct stat.
2860         * sysdeps/unix/sysv/linux/xstatconv.c (xstat_conv): Adjust for
2861         nsec resolution changes.
2862         (xstat64_conv): Likewise.
2863         (xstat32_conv): Likewise.
2865         * sysdeps/unix/sysv/linux/kernel_stat.h: Add nsec resolution for
2866         struct kernel_stat.
2868         * sysdeps/unix/sysv/linux/bits/stat.h: Add nsec resolution for
2869         structs stat and stat64.
2871         * time/time.h (__timespec_defined): Define for __USE_MISC.
2873 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2875         * include/signal.h: Add libc_hidden_proto for __libc_current_sigrtmin
2876         and __libc_current_sigrtmax.
2878 2002-12-31  Jakub Jelinek  <jakub@redhat.com>
2880         * include/errno.h (__errno_location): Add prototype.
2881         Use libc_hidden_proto unconditionally.
2882         * include/netdb.h (__h_errno_location): Use libc_hidden_proto
2883         unconditionally.
2884         * include/resolv.h (__res_state): Likewise.
2886         * hurd/errno-loc.c (__errno_location): Add libc_hidden_def.
2887         * include/sys/socket.h (accept): Add libc_hidden_proto.
2888         * include/errno.h (__errno_location): Likewise.
2889         * include/netdb.h (__h_errno_location): Likewise.
2890         * include/resolv.h (__res_state): Likewise.
2891         * include/unistd.h (__lseek): Likewise.
2892         * sysdeps/generic/errno-loc.c (__errno_location): Add libc_hidden_def.
2893         * sysdeps/generic/herrno-loc.c (__h_errno_location): Likewise.
2894         * sysdeps/generic/res-state.c (__res_state): Likewise.
2895         * sysdeps/generic/accept.c (accept): Likewise.
2896         * sysdeps/generic/lseek.c (__lseek): Likewise.
2897         * sysdeps/generic/allocrtsig.c (__libc_current_sigrtmin,
2898         __libc_current_sigrtmax): Likewise.
2899         * sysdeps/mach/hurd/accept.c (accept): Likewise.
2900         * sysdeps/mach/hurd/lseek.c (__lseek): Likewise.
2901         * sysdeps/unix/sysv/aix/accept.c (accept): Likewise.
2902         * sysdeps/unix/sysv/aix/lseek.c (__lseek): Likewise.
2903         * sysdeps/unix/sysv/linux/accept.S (accept): Likewise.
2904         * sysdeps/unix/inet/syscalls.list (__GI_accept): New alias to accept.
2905         * sysdeps/unix/sysv/linux/alpha/syscalls.list (__GI_accept): Likewise.
2906         * sysdeps/unix/sysv/linux/hppa/syscalls.list (__GI_accept): Likewise.
2907         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__GI___lseek): New
2908         alias to llseek.
2909         (__GI_accept): New alias to accept.
2910         * sysdeps/unix/sysv/linux/mips/syscalls.list (__GI_accept): Likewise.
2911         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (__GI___lseek):
2912         New alias to llseek.
2913         (__GI_accept): New alias to accept.
2914         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (__GI_accept):
2915         Likewise.
2916         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (__GI_accept):
2917         Likewise.
2918         * sysdeps/unix/syscalls.list (__GI___lseek): New alias to lseek.
2920         * sysdeps/alpha/setjmp.S : Use libc_hidden_def(name) instead of
2921         strong_alias (name, __GI_name).
2922         * sysdeps/arm/bsd-_setjmp.S : Likewise.
2923         * sysdeps/hppa/bsd-_setjmp.S : Likewise.
2924         * sysdeps/i386/bsd-_setjmp.S : Likewise.
2925         * sysdeps/mips/mips64/bsd-_setjmp.S : Likewise.
2926         * sysdeps/mips/bsd-_setjmp.S : Likewise.
2927         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S : Likewise.
2928         * sysdeps/powerpc/powerpc64/setjmp.S : Likewise.
2929         * sysdeps/s390/s390-32/elf/setjmp.S : Likewise.
2930         * sysdeps/s390/s390-32/bsd-_setjmp.S : Likewise.
2931         * sysdeps/s390/s390-64/elf/setjmp.S : Likewise.
2932         * sysdeps/s390/s390-64/bsd-_setjmp.S : Likewise.
2933         * sysdeps/sh/bsd-_setjmp.S : Likewise.
2934         * sysdeps/sparc/sparc32/setjmp.S : Likewise.
2935         * sysdeps/unix/arm/fork.S : Likewise.
2936         * sysdeps/unix/bsd/hp/m68k/vfork.S : Likewise.
2937         * sysdeps/unix/bsd/i386/vfork.S : Likewise.
2938         * sysdeps/unix/bsd/osf/alpha/fork.S : Likewise.
2939         * sysdeps/unix/bsd/sun/m68k/vfork.S : Likewise.
2940         * sysdeps/unix/bsd/ultrix4/mips/vfork.S : Likewise.
2941         * sysdeps/unix/bsd/vax/vfork.S : Likewise.
2942         * sysdeps/unix/i386/fork.S : Likewise.
2943         * sysdeps/unix/mips/fork.S : Likewise.
2944         * sysdeps/unix/sparc/fork.S : Likewise.
2945         * sysdeps/unix/sparc/vfork.S : Likewise.
2946         * sysdeps/unix/sysv/linux/arm/vfork.S : Likewise.
2947         * sysdeps/unix/sysv/linux/cris/vfork.S : Likewise.
2948         * sysdeps/unix/sysv/linux/i386/vfork.S : Likewise.
2949         * sysdeps/unix/sysv/linux/ia64/fork.S : Likewise.
2950         * sysdeps/unix/sysv/linux/ia64/setjmp.S : Likewise.
2951         * sysdeps/unix/sysv/linux/ia64/vfork.S : Likewise.
2952         * sysdeps/unix/sysv/linux/m68k/vfork.S : Likewise.
2953         * sysdeps/unix/sysv/linux/sh/vfork.S : Likewise.
2954         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S : Likewise.
2955         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S : Likewise.
2956         * sysdeps/unix/sysv/linux/sparc/fork.S : Likewise.
2957         * sysdeps/unix/sysv/linux/sparc/vfork.S : Likewise.
2958         * sysdeps/unix/sysv/linux/x86_64/vfork.S : Likewise.
2959         * sysdeps/unix/fork.S : Likewise.
2960         * sysdeps/vax/bsd-_setjmp.S : Likewise.
2961         * sysdeps/x86_64/bsd-_setjmp.S : Likewise.
2963         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Guard against multiple
2964         inclusion.
2966 2002-12-31  Ulrich Drepper  <drepper@redhat.com>
2968         * include/unistd.h: Add libc_hidden_proto for __fork and __vfork.
2969         * sysdeps/generic/fork.c: Add libc_hidden_def for __fork.
2970         * sysdeps/mach/hurd/fork.c: Likewise.
2971         * sysdeps/unix/sysv/aix/fork.c: Likewise.
2972         * sysdeps/unix/fork.S: Add __GI___fork alias.
2973         * sysdeps/unix/arm/fork.S: Likewise.
2974         * sysdeps/unix/bsd/osf/alpha/fork.S: Likewise.
2975         * sysdeps/unix/i386/fork.S: Likewise.
2976         * sysdeps/unix/mips/fork.S: Likewise.
2977         * sysdeps/unix/sparc/fork.S: Likewise.
2978         * sysdeps/unix/sysv/linux/ia64/fork.S: Likewise.
2979         * sysdeps/unix/sysv/linux/sparc/fork.S: Likewise.
2980         * sysdeps/unix/sysv/linux/syscalls.list: Likewise.
2981         * sysdeps/generic/vfork.c: Add libc_hidden_def for __vfork.
2982         * sysdeps/unix/bsd/hp/m68k/vfork.S: Add __GI___vfork alias.
2983         * sysdeps/unix/bsd/i386/vfork.S: Likewise.
2984         * sysdeps/unix/bsd/sun/m68k/vfork.S: Likewise.
2985         * sysdeps/unix/bsd/ultrix4/mips/vfork.S: Likewise.
2986         * sysdeps/unix/bsd/vax/vfork.S: Likewise.
2987         * sysdeps/unix/sparc/vfork.S: Likewise.
2988         * sysdeps/unix/sysv/linux/arm/vfork.S: Likewise.
2989         * sysdeps/unix/sysv/linux/cris/vfork.S: Likewise.
2990         * sysdeps/unix/sysv/linux/i386/vfork.S: Likewise.
2991         * sysdeps/unix/sysv/linux/ia64/vfork.S: Likewise.
2992         * sysdeps/unix/sysv/linux/m68k/vfork.S: Likewise.
2993         * sysdeps/unix/sysv/linux/sh/vfork.S: Likewise.
2994         * sysdeps/unix/sysv/linux/sparc/vfork.S: Likewise.
2995         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
2997         * include/time.h: Add libc_hidden_proto for __nanosleep.
2998         * sysdeps/generic/nanosleep.c: Add libc_hidden_def for __nanosleep.
2999         * sysdeps/mach/nanosleep.c: Likewise.
3000         * sysdeps/unix/sysv/aix/nanosleep.c: Likewise.
3001         * sysdeps/unix/sysv/linux/syscalls.list: Add __GI___nanosleep alias.
3003         * libio/libioP.h: Add libc_hidden_proto for _IO_list_lock,
3004         _IO_list_unlock, and _IO_list_resetlock.
3005         * libio/genops.c: Add libc_hidden_def for _IO_list_lock,
3006         _IO_list_unlock, and _IO_list_resetlock.
3008         * libio/libioP.h: Add libc_hidden_proto for _IO_iter_begin,
3009         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
3010         * libio/genops.c: Add libc_hidden_def for _IO_iter_begin,
3011         _IO_iter_end, _IO_iter_next, and _IO_iter_file.
3013         * include/setjmp.h: Add libc_hidden_proto for __libc_longjmp.
3014         * sysdeps/generic/longjmp.c: Add libc_hidden_def for __longjmp.
3015         * sysdeps/unix/sysv/linux/sparc/sparc64/longjmp.S: Add
3016         __GI___longjmp alias.
3018         * include/setjmp.h: Add libc_hidden_proto for _setjmp.
3019         * sysdeps/alpha/setjmp.S: Add __GI__setjmp alias.
3020         * sysdeps/arm/bsd-_setjmp.S: Likewise.
3021         * sysdeps/generic/bsd-_setjmp.c: Likewise.
3022         * sysdeps/hppa/bsd-_setjmp.S: Likewise.
3023         * sysdeps/i386/bsd-_setjmp.S: Likewise.
3024         * sysdeps/m68k/bsd-_setjmp.c: Likewise.
3025         * sysdeps/mips/bsd-_setjmp.S: Likewise.
3026         * sysdeps/mips/mips64/bsd-_setjmp.S: Likewise.
3027         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Likewise.
3028         * sysdeps/powerpc/powerpc64/setjmp.S: Likewise.
3029         * sysdeps/s390/s390-32/bsd-_setjmp.S: Likewise.
3030         * sysdeps/s390/s390-32/elf/setjmp.S: Likewise.
3031         * sysdeps/s390/s390-64/bsd-_setjmp.S: Likewise.
3032         * sysdeps/s390/s390-64/elf/setjmp.S: Likewise.
3033         * sysdeps/sh/bsd-_setjmp.S: Likewise.
3034         * sysdeps/sparc/sparc32/setjmp.S: Likewise.
3035         * sysdeps/unix/sysv/linux/ia64/setjmp.S: Likewise.
3036         * sysdeps/unix/sysv/linux/sparc/sparc64/setjmp.S: Likewise.
3037         * sysdeps/vax/bsd-_setjmp.S: Likewise.
3038         * sysdeps/x86_64/bsd-_setjmp.S: Likewise.
3040 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
3042         * malloc/thread-m.h (thread_atfork): Define using __register_atfork.
3044 2002-12-30  Roland McGrath  <roland@redhat.com>
3046         * Rules (generated): Target removed.
3047         * mach/Makefile (generated): Define it here instead.
3049         * math/Makefile (generated): Add m_*l and m_*f variants too.
3051 2002-12-30  Ulrich Drepper  <drepper@redhat.com>
3053         * elf/dl-close.c (_dl_close): Handle relocation dependencies among
3054         the to-be-deleted objects right away instead of later separately.
3055         The latter fails because the scope data structures of the DSO
3056         might already be gone.
3058         * elf/Makefile: Add rules to build and run reldep8 test.
3059         * elf/reldep8.c: New file.
3060         * elf/reldep8mod1.c: New file.
3061         * elf/reldep8mod2.c: New file.
3062         * elf/reldep8mod3.c: New file.
3063         Contributed by Jakub Jelinek.
3065 2002-12-24  GOTO Masanori  <gotom@debian.or.jp>
3067         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
3068         checking of return value ENOSYS from getdents64.
3070 2002-12-28  Andreas Schwab  <schwab@suse.de>
3072         * sysdeps/unix/Makefile: Include $(common-objpfx)s-proto-cancel.d.
3073         ($(common-objpfx)s-%.d): Generalized from
3074         $(common-objpfx)s-proto.d rule.
3075         (common-generated): Add s-proto-cancel.d.
3076         * sysdeps/unix/make-syscalls.sh: Use s-proto-cancel.d for
3077         cancellable syscalls.
3078         * sysdeps/unix/s-proto-cancel.S: New file.
3080 2002-12-29  Roland McGrath  <roland@redhat.com>
3082         * resolv/res_libc.c: Move _res defn magic after res_init defn
3083         so _res macro is in effect for that code.
3085         * Makerules ($(common-objpfx)%.h $(common-objpfx)%.h.d): Fix sed
3086         pattern for prepending $(..) so it doesn't affect $(foo).
3088         * math/Makefile (generated): Add $(addsuffix .c .S,$(calls:s_%=m_%)).
3090 2002-12-29  Jakub Jelinek  <jakub@redhat.com>
3092         * elf/cache.c (add_to_cache): Don't loop forever with 1ULL << 63 set
3093         in hwcap.
3095 2002-12-28  Ulrich Drepper  <drepper@redhat.com>
3097         * misc/sys/cdefs.h (__attribute_deprecated__): New #define.
3099 2002-12-28  Andreas Jaeger  <aj@suse.de>
3101         * sysdeps/generic/readelflib.c (process_elf_file): Cast value to
3102         avoid warning.
3103         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Likewise.
3105 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
3107         * inet/herrno.c (__h_errno_location): Remove.
3108         * inet/Makefile (routines): Add herrno-loc.
3109         * resolv/res_libc.c (__res_state): Remove.
3110         * resolv/Makefile (routines): Add res-state.
3111         * sysdeps/generic/herrno-loc.c: New file.
3112         * sysdeps/generic/res-state.c: New file.
3114 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
3116         * sysdeps/unix/sysv/linux/i386/sysdep.h (I386_USE_SYSENTER):
3117         Only define if USE_DL_SYSINFO is defined.
3119 2002-12-22  Jakub Jelinek  <jakub@redhat.com>
3121         * sysdeps/unix/sysv/linux/ia64/sysdep.h (INLINE_SYSCALL,
3122         INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERROR):
3123         Define. Patch by Richard Henderson and Jes Sorensen.
3124         (PSEUDO): Remove unnecessary ;;.
3125         * elf/rtld.c (dl_main): Initialize TLS even if no PT_TLS segments
3126         are found unless TLS_INIT_TP_EXPENSIVE.  Use NONTLS_INIT_TP.
3127         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Use NONTLS_INIT_TP
3128         if not initializing thread pointer.
3129         [!USE_TLS && NONTLS_INIT_TP] (__pthread_initialize_minimal): New.
3130         * sysdeps/generic/libc-start.c (__pthread_initialize_minimal): Don't
3131         make it weak also if NONTLS_INIT_TP.
3132         * sysdeps/unix/common/pause.c: Handle cancellation.
3133         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h [DONT_LOAD_G1]
3134         (LOADSYSCALL): Remove.
3135         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
3136         (SYSCALL_ERROR_HANDLER): Use it.
3137         (PSEUDO): Don't jump around error handler.
3138         * sysdeps/unix/sysv/linux/sparc/sparc32/pipe.S (__libc_pipe): Don't
3139         jump around error handler.
3140         * sysdeps/unix/sysv/linux/sparc/sparc32/syscall.S (syscall): Likewise.
3141         * sysdeps/unix/sysv/linux/sparc/sparc32/socket.S (__socket): Branch
3142         to __syscall_error_handler on failure.
3143         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [DONT_LOAD_G1]
3144         (LOADSYSCALL): Remove.
3145         (SYSCALL_ERROR_HANDLER_ENTRY): Define.
3146         (SYSCALL_ERROR_HANDLER): Use it.
3147         (PSEUDO): Don't jump around error handler.
3148         * sysdeps/unix/sysv/linux/sparc/sparc64/pipe.S (__libc_pipe): Don't
3149         jump around error handler.
3150         * sysdeps/unix/sysv/linux/sparc/sparc64/syscall.S (syscall): Likewise.
3151         * sysdeps/unix/sysv/linux/sparc/sparc64/socket.S (__socket): Branch
3152         to __syscall_error_handler on failure.
3154 2002-12-27  Roland McGrath  <roland@redhat.com>
3156         * scripts/gen-as-const.awk: New file.
3157         * Makefile (distribute): Add it.
3158         * Makerules ($(common-objpfx)%.h %.h.d: %.sym): New pattern rule.
3159         (before-compile): Add $(gen-as-const-headers:%.sym=$(common-objpfx)%.h)
3160         to the list.
3161         (+depfiles): Add $(addprefix $(common-objpfx),$(gen-as-const-headers)).
3163 2002-12-27  Andreas Schwab  <schwab@suse.de>
3165         * sysdeps/unix/sysv/linux/m68k/socket.S: Add cancellation support.
3167 2002-12-27  Jakub Jelinek  <jakub@redhat.com>
3169         * malloc/arena.c (ptmalloc_init): Don't call next_env_entry if
3170         _environ is NULL.
3172 2002-12-27  Andreas Schwab  <schwab@suse.de>
3174         * Makerules ($(common-objpfx)%.make): Filter through
3175         $(sed-remove-objpfx).
3177 2002-12-23  Roland McGrath  <roland@redhat.com>
3179         * scripts/abilist.awk: Produce a more compact format, divided into
3180         stanzas for each version set, the set name listed only once.
3181         * scripts/extract-abilist.awk: New file.
3182         * scripts/merge-abilist.awk: New file.
3183         * Makerules (check-abi-%, update-abi-%): New pattern rules.
3184         (update-abi, check-abi): New targets.
3185         * Makefile (+subdir_targets): Add subdir_{check,update}-abi.
3187 2002-12-19  Roland McGrath  <roland@redhat.com>
3189         * Makerules (%.symlist): Use LC_ALL=C when running awk script.
3191         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Cast result of
3192         INTERNAL_SYSCALL.
3194 2002-12-21  Andreas Schwab  <schwab@suse.de>
3196         * elf/check-textrel.c (handle_file): Swap p_type.
3198 2002-12-21  Andreas Schwab  <schwab@suse.de>
3200         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Define.
3201         (INLINE_SYSCALL): Use it.
3202         (INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): Define.
3203         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
3205         * sysdeps/unix/sysv/linux/m68k/getpagesize.c: Use INTERNAL_SYSCALL.
3206         * sysdeps/unix/sysv/linux/m68k/brk.c: Likewise.
3208 2002-12-20  Art Haas  <ahaas@airmail.net>
3210         * sysdeps/gnu/siglist.c: Convert GCC extension initializer
3211         syntax to C99.
3213 2002-12-21  Philip Blundell  <philb@gnu.org>
3215         * sysdeps/arm/elf/start.S (_start): Optimise a little.  Push stack
3216         top as seventh arg to __libc_start_main.
3217         Reported by paulnash@wildseed.com.
3219         * sysdeps/unix/sysv/linux/arm/clone.S: Small optimisation.
3221         * sysdeps/unix/sysv/linux/arm/sigcontextinfo.h: Elide
3222         compatibility cruft when new enough kernel is assumed.
3224 2002-12-20  Jakub Jelinek  <jakub@redhat.com>
3226         * sysdeps/unix/sysv/linux/i386/brk.c (__brk): Use INTERNAL_SYSCALL
3227         instead of INLINE_SYSCALL.
3229 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
3231         * sysdeps/unix/sysv/linux/i386/sigaction.c (__libc_sigaction): Fix
3232         typo.
3234         * sysdeps/unix/sysv/linux/alpha/bits/shm.h: Define SHM_HUGETLB.
3235         * sysdeps/unix/sysv/linux/bits/shm.h: Likewise.
3236         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Likewise.
3237         * sysdeps/unix/sysv/linux/ia64/bits/shm.h: Likewise.
3238         * sysdeps/unix/sysv/linux/mips/bits/shm.h: Likewise.
3239         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h: Likewise.
3240         * sysdeps/unix/sysv/linux/s390/bits/shm.h: Likewise.
3241         * sysdeps/unix/sysv/linux/sparc/bits/shm.h: Likewise.
3242         * sysdeps/unix/sysv/linux/x86_64/bits/shm.h: Likewise.
3243         Patch by William Lee Irwin <wli@holomorphy.com>.
3245 2002-12-20  Andreas Schwab  <schwab@suse.de>
3247         * locale/programs/ld-measurement.c (measurement_output): Fix
3248         index calculation.
3250 2002-12-20  Ulrich Drepper  <drepper@redhat.com>
3252         * include/libio.h [_IO_MTSAFE_IO && _IO_lock_inexpensive]:
3253         Redefine _IO_flockifle and _IO_funlockfile as inlines.
3255         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): For TLS
3256         builds add "tls" in the search path.
3257         * elf/ldconfig.c (is_hwcap_platform): Also recognize "tls".
3258         (path_hwcap): Recognize "tls".
3260 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
3262         * sysdeps/unix/sysv/linux/i386/system.c (cancel_handler): Use
3263         __waitpid instead of waitpid.
3265         * sysdeps/unix/sysv/linux/i386/_exit.S: Use ENTER_KERNEL instead of
3266         int $0x80.
3267         * sysdeps/unix/sysv/linux/i386/getcontext.S: Likewise.
3268         * sysdeps/unix/sysv/linux/i386/setcontext.S: Likewise.
3269         * sysdeps/unix/sysv/linux/i386/swapcontext.S: Likewise.
3271         * sysdeps/unix/sysv/linux/i386/sysdep.h: Add support to use AT_SYSINFO
3272         information for system calls.
3274         * sysdeps/generic/dl-sysdep.h: Define RTLD_PRIVATE_ERRNO to 1 only
3275         for ld.so.
3277         * elf/rtld.c (_dl_start) [USE___THREAD]: Define initdtv.
3279 2002-12-19  Roland McGrath  <roland@redhat.com>
3281         * iconvdata/ibm856.h: Convert GCC extension initializer syntax to C99.
3282         * iconvdata/ibm922.h: Likewise.
3283         * iconvdata/ibm930.h: Likewise.
3284         * iconvdata/ibm932.h: Likewise.
3285         * iconvdata/ibm933.h: Likewise.
3286         * iconvdata/ibm935.h: Likewise.
3287         * iconvdata/ibm937.h: Likewise.
3288         * iconvdata/ibm939.h: Likewise.
3289         * iconvdata/ibm943.h: Likewise.
3290         * iconvdata/isiri-3342.h: Likewise.
3292 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
3294         * test-skeleton.c (main): Make sure correct value is seen as
3295         argv[0] after adjustment of argv, and argc.
3297         * elf/rtld.c: Don't initialize _dl_dynamic_weak to 1 if
3298         RTLD_CORRECT_DYNAMIC_WEAK is defined.
3300 2002-12-19  Jakub Jelinek  <jakub@redhat.com>
3302         * nscd/connections.c (nscd_run): Shut up warning.
3303         * tst-ungetc.c (assert): Undefined before redefining.
3305 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
3307         * posix/regex.c: Use __builtin_expect even outside glibc if gcc 3
3308         is used.
3310 2002-12-17  Art Haas  <ahaas@airmail.net>
3312         * iconvdata/cp737.h: Convert GCC extension initializer syntax to C99.
3313         * iconvdata/cp775.h: Likewise.
3314         * iconvdata/ibm1046.h: Likewise.
3315         * iconvdata/ibm1124.h: Likewise.
3316         * iconvdata/ibm1129.h: Likewise.
3317         * iconvdata/ibm1132.h: Likewise.
3318         * iconvdata/ibm1133.h: Likewise.
3319         * iconvdata/ibm1160.h: Likewise.
3320         * iconvdata/ibm1161.h: Likewise.
3321         * iconvdata/ibm1162.h: Likewise.
3322         * iconvdata/ibm1163.h: Likewise.
3323         * iconvdata/ibm1164.h: Likewise.
3325 2002-12-19  Ulrich Drepper  <drepper@redhat.com>
3327         * sysdeps/unix/sysv/linux/i386/system.c: Define FORK only if
3328         __ASSUME_CLONE_THREAD_FLAGS is defined.
3329         * sysdeps/unix/sysv/linux/kernel-features.h
3330         (__ASSUME_CLONE_THREAD_FLAGS): Define for x86 and kernel >= 2.5.50.
3332 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
3334         * sysdeps/unix/sysv/linux/i386/brk.c: Use INTERNAL_SYSCALL instead
3335         of asm.
3336         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3338         * elf/dl-support.c [NEED_DL_SYSINFO]: Define and initialize
3339         _dl_sysinfo.
3340         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
3341         code.
3342         * elf/rtld.c [DL_NEED_SYSINFO]: Initialize _dl_sysinfo element of
3343         _rtld_global.
3344         [DL_SYSINFO_IMPLEMENTATION]: If defined use it to generate the needed
3345         code.
3346         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [NEED_DL_SYSINFO]:
3347         Check for AT_SYSINFO and set _dl_sysinfo appropriately.
3348         * sysdeps/generic/ldsodefs.h (struct rtld_global) [NEED_DL_SYSINFO]:
3349         Add _dl_sysinfo.
3351 2002-12-18  Jakub Jelinek  <jakub@redhat.com>
3353         * misc/Versions [libc: GLIBC_2.3.1]: Move __libc_readv and
3354         __libc_writev to...
3355         [libc: GLIBC_PRIVATE]: ...here.
3356         * sysvipc/Versions [libc: GLIBC_2.3.1]: Move __libc_msgrcv and
3357         __libc_msgsnd to...
3358         [libc: GLIBC_PRIVATE]: ...here.
3360 2002-12-18  Ulrich Drepper  <drepper@redhat.com>
3362         * sysdeps/unix/sysv/linux/i386/sysdep.h: Define ENTER_KERNEL macro.
3363         Use it instead of directly int $0x80.
3364         * sysdeps/unix/sysv/linux/i386/brk.c: Use ENTER_KERNEL.
3365         * sysdeps/unix/sysv/linux/i386/mmap64.S: Likewise.
3366         * sysdeps/unix/sysv/linux/i386/mmap.S: Likewise.
3367         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3368         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
3369         * sysdeps/unix/sysv/linux/i386/syscall.S: Likewise.
3371 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
3373         * malloc/malloc.c (mALLOPt): Make sure malloc is initialized.
3375         * elf/elf.h (AT_SYSINFO): New define.
3376         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add support for
3377         AT_SYSINFO.
3379 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
3381         * sysdeps/unix/sysv/linux/alpha/syscalls.list (msgrcv, msgsnd):
3382         Make cancelable.
3383         * sysdeps/unix/sysv/linux/hppa/syscalls.list (msgrcv, msgsnd):
3384         Likewise.
3385         * sysdeps/unix/sysv/linux/ia64/syscalls.list (msgrcv, msgsnd):
3386         Likewise.
3387         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (msgrcv, msgsnd):
3388         Likewise.
3389         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (msgrcv, msgsnd):
3390         Likewise.
3391         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__sigsuspend): Likewise.
3393         * malloc/thread-m.h (mutex_init, mutex_lock, mutex_trylock,
3394         mutex_unlock): If not building NPTL, use __libc_maybe_call2 if
3395         available, otherwise __libc_maybe_call.
3396         * sysdeps/unix/sysv/linux/x86_64/recv.c: Add support for
3397         cancellation handling.
3398         * sysdeps/unix/sysv/linux/x86_64/send.c: Likewise.
3400 2002-12-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
3402         * posix/regcomp.c (free_workarea_compile): Free the new member
3403         ORG_INDICES.
3404         (analyze): Initialize ORG_INDICES.
3405         (duplicate_node_closure): Search for a existing node, which is
3406         duplicated from the node ORG_DEST and satisfies the constraint
3407         CONSTRAINT.  And use it to avoid inifimite loop.
3408         (search_duplicated_node): New function.
3409         (duplicate_node): Store the index of the original node.
3410         * posix/regex_internal.c (re_dfa_add_node): Realloc ORG_INDICES
3411         if needed.
3412         * posix/regex_internal.h (re_dfa_t): Add new members.
3414 2002-12-17  Ulrich Drepper  <drepper@redhat.com>
3416         * stdio-common/tst-fdopen.c: Undefine assert before redefining it.
3418 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
3420         * sysdeps/posix/system.c (do_system): Add support for installation
3421         of cancellation handlers.
3422         * sysdeps/unix/sysv/linux/i386/system.c: New file.
3424         * stdlib/Makefile (tests): Add tst-system.
3425         * stdlib/tst-system.c: New file.
3427         * sysdeps/unix/sysv/linux/i386/socket.S [NEED_CANCELLATION &&
3428         CENABLE]: Don't lose content of %ebx.
3430 2002-12-17  Jakub Jelinek  <jakub@redhat.com>
3432         * sysdeps/unix/sysv/linux/i386/socket.S: Use SINGLE_THREAD_P
3433         macro instead of comparing %gs:MULTIPLE_THREADS_OFFSET directly.
3435 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
3437         * sysdeps/posix/getaddrinfo.c (gaih_inet): If __nss_lookup_function
3438         fails to return a function pointer don't use it.
3440 2002-12-16  Art Haas  <ahaas@airmail.net>
3442         * io/ftw.c: Convert GCC extension initializer syntax to C99.
3443         * iconvdata/iso-ir-165.c: Likewise.
3444         * iconvdata/jis0208.c: Likewise.
3445         * iconvdata/jis0212.c: Likewise.
3447 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
3449         * sysdeps/unix/sysv/linux/syscalls.list: Add epoll_create,
3450         epoll_ctl, and epoll_wait.
3451         * sysdeps/unix/sysv/linux/Versions [libc: GLIBC_2.3.2]: Add
3452         epoll_create, epoll_ctl, and epoll_wait.
3453         * sysdeps/unix/sysv/linux/sys/epoll.h: New file.  Written by
3454         Davide Libenzi <davidel@xmailserver.org>.
3455         * sysdeps/unix/sysv/linux/Dist: Add sys/epoll.h.
3456         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
3457         Add sys/epoll.h.
3459 2002-12-16  Art Haas  <ahaas@airmail.net>
3461         * sysdeps/generic/bp-semctl.h: Convert GCC extension initializer
3462         syntax to C99
3463         * sysdeps/unix/sysv/aix/settimer.c: Likewise.
3464         * sysdeps/unix/sysv/aix/sleep.c: Likewise.
3465         * sysdeps/unix/sysv/aix/usleep.c: Likewise.
3467 2002-12-16  Ulrich Drepper  <drepper@redhat.com>
3469         * stdio-common/Makefile (routines): Remove lockfile.  Add
3470         flockfile, ftrylockfile, and funlockfile.
3471         * sysdeps/generic/lockfile.c: Removed.  Each function has its own file.
3472         * sysdeps/generic/flockfile.c: New file.
3473         * sysdeps/generic/ftrylockfile.c: New file.
3474         * sysdeps/generic/funlockfile.c: New file.
3476 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
3478         * sysdeps/unix/sysv/linux/i386/socket.S: Use CENABLE and CDISABLE
3479         macros instead of doing the calls directly.
3480         * sysdeps/unix/make-syscalls.sh: Add ptw-*.$o target name to rules.
3481         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for ptw-%
3482         targets.
3484 2002-12-16  Jakub Jelinek  <jakub@redhat.com>
3486         * sysdeps/i386/fpu/bits/mathinline.h: Backout last change.
3487         * sysdeps/ieee754/bits/nan.h: Likewise.
3489         * sysdeps/unix/sysv/linux/ia64/syscalls.list (__syscall_open,
3490         __syscall_wait4, __syscall_ioctl, __syscall_write): Add.
3492 2002-12-16  Roland McGrath  <roland@redhat.com>
3494         * sunrpc/xdr_mem.c (xdrmem_inline): Fix argument type.
3495         * sunrpc/xdr_rec.c (xdrrec_inline): Likewise.
3496         * sunrpc/xdr_stdio.c (xdrstdio_inline): Likewise.
3498         * sysdeps/unix/sysv/linux/syscalls.list: Add getpmsg, putpmsg.
3499         * sysdeps/unix/sysv/linux/mips/syscalls.list: Remove s_getpmsg,
3500         s_putpmsg.
3501         * sysdeps/unix/sysv/linux/i386/getpmsg.c: File removed.
3502         * sysdeps/unix/sysv/linux/i386/putpmsg.c: File removed.
3503         * sysdeps/unix/sysv/linux/m68k/getpmsg.c: File removed.
3504         * sysdeps/unix/sysv/linux/m68k/putpmsg.c: File removed.
3505         * sysdeps/unix/sysv/linux/mips/getpmsg.c: File removed.
3506         * sysdeps/unix/sysv/linux/mips/putpmsg.c: File removed.
3507         * sysdeps/unix/sysv/linux/powerpc/getpmsg.c: File removed.
3508         * sysdeps/unix/sysv/linux/powerpc/putpmsg.c: File removed.
3510 2002-12-13  Paul Eggert  <eggert@twinsun.com>
3512         * sunrpc/rpc/xdr.h (struct XDR.xdr_ops.x_inline): 2nd arg
3513         is now u_int, not int.
3514         (struct XDR.x_handy): Now u_int, not int.
3515         * sunrpc/xdr_mem.c: Include <limits.h>.
3516         (xdrmem_getlong, xdrmem_putlong, xdrmem_getbytes, xdrmem_putbytes,
3517         xdrmem_inline, xdrmem_getint32, xdrmem_putint32):
3518         x_handy is now unsigned, not signed.
3519         Do not decrement x_handy if no change is made.
3520         (xdrmem_setpos): Check for int overflow.
3521         * sunrpc/xdr_sizeof.c (x_inline): 2nd arg is now unsigned.
3522         (xdr_sizeof): Remove cast that is now unnecessary, now that
3523         x_handy is unsigned.
3525 2002-12-15  Art Haas  <ahaas@airmail.net>
3527         * iconv/gconv_conf.c: Convert GCC extension initializer syntax to C99.
3528         * iconvdata/gap.awk: Likewise.
3529         * iconvdata/gen-8bit-gap-1.sh: Likewise.
3530         * iconvdata/gen-8bit-gap.sh: Likewise.
3531         * locale/C-address.c: Likewise.
3532         * locale/C-collate.c: Likewise.
3533         * locale/C-ctype.c: Likewise.
3534         * locale/C-identification.c: Likewise.
3535         * locale/C-measurement.c: Likewise.
3536         * locale/C-messages.c: Likewise.
3537         * locale/C-monetary.c: Likewise.
3538         * locale/C-name.c: Likewise.
3539         * locale/C-numeric.c: Likewise.
3540         * locale/C-paper.c: Likewise.
3541         * locale/C-telephone.c: Likewise.
3542         * locale/C-time.c: Likewise.
3543         * nscd/connections.c: Likewise.
3544         * nscd/grpcache.c: Likewise.
3545         * nscd/hstcache.c: Likewise.
3546         * nscd/pwdcache.c: Likewise.
3547         * stdio-common/vfprintf.c: Likewise.
3548         * stdlib/random.c: Likewise.
3549         * sysdeps/generic/siglist.c: Likewise.
3550         * sysdeps/i386/fpu/bits/mathinline.h: Likewise.
3551         * sysdeps/ieee754/bits/nan.h: Likewise.
3552         * sysdeps/posix/sprofil.c: Likewise.
3553         * sysdeps/unix/sysv/linux/sleep.c: Likewise.
3554         * sysdeps/unix/sysv/linux/sysctl.c: Likewise.
3555         * sysdeps/unix/sysv/linux/usleep.c: Likewise.
3557 2002-12-15  Roland McGrath  <roland@redhat.com>
3559         * sysdeps/unix/sysv/linux/readv.c (do_readv): Use prototype defn.
3561         * sysdeps/unix/sysv/linux/wait.c: Don't include <nptl/pthreadP.h> or
3562         <tls.h> here, no need for it.
3563         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
3565         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): Take ARG as void *
3566         parameter, not varargs parameter.
3568         * sysdeps/generic/sysdep-cancel.h (LIBC_CANCEL_RESET): Evaluate the
3569         argument so it's not an unused variable.
3571         * resolv/resolv.h (__p_key_syms, __p_cert_syms, __p_class_syms,
3572         __p_type_syms, __p_rcode_syms): Remove decls, never really intended
3573         for users.
3575         * resolv/Versions (libresolv: GLIBC_2.3.2): New set, add __p_rcode.
3577 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
3579         * sysdeps/unix/sysv/linux/i386/fcntl.c (do_fcntl): This is the
3580         original __libc_fcntl code.  Just renamed.
3582 2002-12-15  Andreas Schwab  <schwab@suse.de>
3584         * sysdeps/unix/sysv/linux/m68k/clone.S: Make inline syscall to _exit.
3586 2002-12-14  Olaf Hering  <olh@suse.de>
3588         * sysdeps/powerpc/bits/setjmp.h: Include <bits/wordsize.h>.
3589         * sysdeps/powerpc/powerpc64/setjmp.S: Fix typo in r18 load.
3591 2002-12-15  Ulrich Drepper  <drepper@redhat.com>
3593         * sysdeps/unix/sysv/linux/libc_fatal.c: New file.
3595         * sysdeps/generic/sysdep-cancel.h: Add dummy definitions for
3596         SINGLE_THREAD_P, LIBC_CANCEL_ASYNC, and LIBC_CANCEL_RESET.
3598         * sysdeps/unix/sysv/linux/open64.c: New file.
3600         * sysdeps/generic/pselect.c: Add support for cancellation handling.
3601         * sysdeps/posix/open64.c: Likewise.
3602         * sysdeps/posix/sigpause.c: Likewise.
3603         * sysdeps/posix/sigwait.c: Likewise.
3604         * sysdeps/posix/system.c: Likewise.
3605         * sysdeps/posix/waitid.c: Likewise.
3606         * sysdeps/unix/sysv/linux/accept.S: Likewise.
3607         * sysdeps/unix/sysv/linux/connect.S: Likewise.
3608         * sysdeps/unix/sysv/linux/llseek.c: Likewise.
3609         * sysdeps/unix/sysv/linux/msgrcv.c: Likewise.
3610         * sysdeps/unix/sysv/linux/msgsnd.c: Likewise.
3611         * sysdeps/unix/sysv/linux/poll.c: Likewise.
3612         * sysdeps/unix/sysv/linux/pread.c: Likewise.
3613         * sysdeps/unix/sysv/linux/pread64.c: Likewise.
3614         * sysdeps/unix/sysv/linux/pwrite.c: Likewise.
3615         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
3616         * sysdeps/unix/sysv/linux/readv.c: Likewise.
3617         * sysdeps/unix/sysv/linux/recv.S: Likewise.
3618         * sysdeps/unix/sysv/linux/recvfrom.S: Likewise.
3619         * sysdeps/unix/sysv/linux/recvmsg.S: Likewise.
3620         * sysdeps/unix/sysv/linux/send.S: Likewise.
3621         * sysdeps/unix/sysv/linux/sendmsg.S: Likewise.
3622         * sysdeps/unix/sysv/linux/sendto.S: Likewise.
3623         * sysdeps/unix/sysv/linux/sigsuspend.c: Likewise.
3624         * sysdeps/unix/sysv/linux/sigtimedwait.c: Likewise.
3625         * sysdeps/unix/sysv/linux/sigwait.c: Likewise.
3626         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Likewise.
3627         * sysdeps/unix/sysv/linux/tcdrain.c: Likewise.
3628         * sysdeps/unix/sysv/linux/wait.c: Likewise.
3629         * sysdeps/unix/sysv/linux/waitpid.c: Likewise.
3630         * sysdeps/unix/sysv/linux/writev.c: Likewise.
3631         * sysdeps/unix/sysv/linux/i386/fcntl.c: Likewise.
3632         * sysdeps/unix/sysv/linux/i386/socket.S: Likewise.
3634 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
3636         * sysdeps/generic/sysdep-cancel.h: New file.
3637         * sysdeps/unix/make-syscalls.sh: Handle C at start of args as
3638         cancelable syscall.
3639         * sysdeps/unix/inet/syscalls.list (accept, connect, recv, recvfrom,
3640         recvmsg, send, sendmsg, sendto): Make cancelable.
3641         * sysdeps/unix/mman/syscalls.list (msync): Likewise.
3642         * sysdeps/unix/sysv/linux/alpha/syscalls.list (llseek, pread,
3643         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
3644         sendto, osf_select): Likewise.
3645         * sysdeps/unix/sysv/linux/hppa/syscalls.list (accept, connect, recv,
3646         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
3647         * sysdeps/unix/sysv/linux/ia64/syscalls.list (llseek, pread,
3648         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
3649         sendto): Likewise.
3650         * sysdeps/unix/sysv/linux/mips/syscalls.list (accept, connect, recv,
3651         recvfrom, recvmsg, send, sendmsg, sendto): Likewise.
3652         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list (llseek, pread,
3653         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
3654         sendto): Likewise.
3655         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list (llseek, pread,
3656         pwrite, accept, connect, recv, recvfrom, recvmsg, send, sendmsg,
3657         sendto, select): Likewise.
3658         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (llseek, pread,
3659         pwrite, accept, connect, recvfrom, recvmsg, sendmsg, sendto):
3660         Likewise.
3661         * sysdeps/unix/sysv/linux/syscalls.list (creat, nanosleep, pause,
3662         select, fcntl): Likewise.
3663         * sysdeps/unix/sysv/syscalls.list (pause, poll): Likewise.
3664         * sysdeps/unix/syscalls.list (close, fcntl, fsync, lseek, open,
3665         read, readv, select, sigsuspend, write, writev): Likewise.
3667 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
3669         * dirent/bug-readdir1.c: Include unistd.h.
3671 2002-12-13  Jakub Jelinek  <jakub@redhat.com>
3673         * locale/programs/locale.c: Include locarchive.h.
3674         (ARCHIVE_NAME): Define.
3675         (write_archive_locales): New function.
3676         (write_locales): Use it.  Ensure the same locale is not printed
3677         multiple times in verbose mode.
3678         Mode LC_IDENTIFICATION and LC_CTYPE printing into...
3679         (print_LC_IDENTIFICATION, print_LC_CTYPE): ... these helper
3680         functions.
3681         (struct nameent): New type.
3682         (nameentcmp): New function.
3684 2002-12-14  Jakub Jelinek  <jakub@redhat.com>
3686         * posix/regex_internal.c (re_string_context_at): Guard wide char
3687         code with #ifdef RE_ENABLE_I18N.
3689 2002-11-22  Paolo Bonzini  <bonzini@gnu.org>
3691         * posix/regcomp.c (regcomp): __re_compile_fastmap -> re_compile_fastmap
3693 2002-12-13  Roland McGrath  <roland@redhat.com>
3695         * posix/bug-regex15.c: New file.
3696         * posix/Makefile (tests): Add it.
3698         * test-skeleton.c (TEST_DATA_LIMIT): New macro, default to 64MB.
3699         (main): Set RLIMIT_DATA limit to TEST_DATA_LIMIT (or lower if need be).
3701 2002-12-13  Ulrich Drepper  <drepper@redhat.com>
3703         * elf/dl-misc.c (_dl_debug_vdprintf): Don't depend on 5-digit PIDs.
3705         * misc/syslog.c (log_cleanup): Don't use parameter in
3706         __libc_lock_unlock call, use syslog_lock directly.  Adjust callers to
3707         pass NULL instead of a pointer to syslog_lock.
3709 2002-12-12  Ulrich Drepper  <drepper@redhat.com>
3711         * iconvdata/Makefile: iconv-rules: Add definition to use gconv.map
3712         linker map for all iconv modules.
3713         (distribute): Add gconv.map.
3714         * iconvdata/gconv.map: New file.
3716         * elf/Makefile: Also check all iconv modules for text relocations.
3718         * stdlib/Makefile: Remove code to automatically import GMP.
3720         * elf/Makefile (tests): Add rules to build and run check-textrel.
3721         * elf/check-textrel.c: New file.
3723         * sysdeps/unix/sysv/linux/i386/sysdep.h (SETUP_PIC_REG): Add .size
3724         directive.
3726 2002-12-11  Jakub Jelinek  <jakub@redhat.com>
3728         * io/test-utime (main): If stnow.st[am]time is wrong, print it and
3729         not st.st[am]time.
3731 2002-04-30  Bruno Haible  <bruno@clisp.org>
3733         * intl/loadmsgcat.c (_nl_init_domain_conv): Don't append //TRANSLIT to
3734         the encoding if it already has slashes.
3735         Reported by Perry Rapp <prapp@erols.com>.
3737 2002-12-11  Roland McGrath  <roland@redhat.com>
3739         * csu/Makefile ($(objpfx)elf-init.oS): Remove target, braino.
3740         (CPPFLAGS-elf-init.oS, CFLAGS-elf-init.oS): New variables.
3741         Turn off PIC for compiling this file.
3743 2002-12-11  Ulrich Drepper  <drepper@redhat.com>
3745         * malloc/thread-m.h: Remove thread_id type and MUTEX_INITIALIZER
3746         definitions.  Not needed.
3747         [_LIBC]: Use definitions from libc-lock.h instead of referencing
3748         pthread routines directly.
3749         * malloc/arena.c (ptmalloc_unlock_all2): Don't add (void) to
3750         mutex_init calls.
3751         (arena_get2): Don't look at return value of mutex_lock.
3753 2002-12-11  Roland McGrath  <roland@redhat.com>
3755         * csu/Makefile ($(objpfx)elf-init.oS): New target, just clone
3756         elf-init.o instead of compiling a PIC version.
3758 2002-12-11  Bruno Haible  <bruno@clisp.org>
3760         * intl/gettext.h: Renamed to ...
3761         * intl/gmo.h: ... here.
3762         * intl/Makefile (distribute): Add gmo.h, remove gettext.h.
3763         * intl/gettextP.h: Update.
3764         * intl/loadmsgcat.c: Update.
3766         * intl/gettextP.h (PARAMS): Make more portable.
3767         (attribute_hidden): Define as empty macro if not already defined.
3768         * intl/hash-string.h (PARAMS): Make more portable.
3769         * intl/loadinfo.h (PARAMS): Likewise.
3770         * intl/plural-exp.h (PARAMS): Likewise.
3771         (attribute_hidden): Move definition near the definition of
3772         internal_function.
3774         * intl/gettextP.h (_nl_locale_name) [!_LIBC]: New declaration.
3775         * intl/plural-exp.h (plural_eval) [!_LIBC]: New declaration.
3777 2002-07-13  Bruno Haible  <bruno@clisp.org>
3779         * intl/dcigettext.c (freea): New macro.
3780         (FREE_BLOCKS): Free also the registered blocks.
3781         (DCIGETTEXT): Free the 'search' variable.
3782         Reported by Andreas Fischer <a.fischer@asentics.de>.
3784 2002-04-27  Bruno Haible  <bruno@clisp.org>
3786         * intl/gettextP.h [! _LIBC]: Use prefix libintl_ instead of suffix __.
3787         * intl/dcigettext.c: Likewise.
3788         * intl/dcgettext.c: Likewise.
3789         * intl/dgettext.c: Likewise.
3790         * intl/gettext.c: Likewise.
3791         * intl/dcngettext.c: Likewise.
3792         * intl/dngettext.c: Likewise.
3793         * intl/ngettext.c: Likewise.
3794         * intl/textdomain.c: Likewise.
3795         * intl/bindtextdom.c: Likewise.
3796         * intl/plural-exp.h: Likewise.
3798 2002-01-02  Bruno Haible  <bruno@clisp.org>
3800         * intl/loadmsgcat.c (_nl_init_domain_conv): Use PARAMS in extern decl.
3802 2001-04-30  Bruno Haible  <bruno@clisp.org>
3804         * intl/dcigettext.c (getuid, getgid, geteuid, getegid): Provide
3805         default macro definitions.  Needed for mingw32.
3807 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
3809         * sysdeps/i386/bits/byteswap.h (__bswap_64): Apply
3810         __builtin_constant_p to macro parameter.
3812         * sysdeps/generic/sigpause.c: Define all functions as weak.
3813         * sysdeps/posix/sigpause.c: Likewise.
3815         * elf/tst-tls7.c (do_test): Adjustments for l_tls_modid being of
3816         type size_t.
3818 2002-12-10  Jakub Jelinek  <jakub@redhat.com>
3820         * elf/tst-array1.c (preinit_array, init_array, fini_array):
3821         Explicitly align the array to sizeof (void *).
3822         * elf/tst-array2dep.c (init_array, fini_array): Likewise.
3824         * include/libc-symbols.h: Fix a comment typo.
3826         * sysdeps/unix/sysv/linux/alpha/select.S (__libc_select): New alias.
3827         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S (__libc_sigsuspend):
3828         Likewise.
3829         * sysdeps/unix/sysv/linux/ia64/sigsuspend.c (__libc_sigsuspend):
3830         Likewise.
3831         * sysdeps/unix/sysv/linux/s390/s390-64/sigsuspend.c
3832         (__libc_sigsuspend): Likewise.
3833         * sysdeps/unix/sysv/linux/sparc/sparc64/sigsuspend.c
3834         (__libc_sigsuspend): Likewise.
3835         * sysdeps/generic/creat.c (__libc_creat): Renamed from creat.
3836         (creat): New weak alias.
3838 2002-12-10  Roland McGrath  <roland@redhat.com>
3840         * manual/libc-texinfo.sh: Emit @set ADD-ON for each ADD-ON that
3841         contributes a manual chapter.
3842         * manual/signal.texi (Process Signal Mask): Use @ifset linuxthreads
3843         around xref to it.
3845         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Refer to
3846         and move contents to ...
3847         (EXTRA_LD_ENVVARS_LINUX): ... this new macro.  Add break for nonmatch.
3848         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS): Use
3849         it instead of duplicating its contents.
3850         (EXTRA_LD_ENVVARS): Likewise.  Add break for nonmatch.
3852 2002-12-09  Jakub Jelinek  <jakub@redhat.com>
3854         * elf/dl-support.c (_dl_non_dynamic_init): Add DL_OSVERSION_INIT if
3855         defined.
3856         * sysdeps/unix/sysv/linux/dl-librecon.h (_dl_osversion_init): New
3857         function.
3858         (EXTRA_LD_ENVVARS): Use it.
3859         (DL_OSVERSION_INIT): Define.
3860         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Include linux
3861         dl-librecon.h.
3862         (EXTRA_LD_ENVVARS): Undef before defining.  Use _dl_osversion_init.
3864 2002-12-10  Ulrich Drepper  <drepper@redhat.com>
3866         * Versions.def: No new symbols in 2.3.1, but some new ones in 2.3.2.
3868         * sysdeps/unix/closedir.c (__closedir): Remove __libc_lock_lock
3869         call.  It is not allowed to destroy pthread mutexes which are
3870         still in use even though it is safe for our implementations.  If
3871         somebody still uses the descriptor it is a bug.
3873 2002-12-09  Richard Henderson  <rth@redhat.com>
3875         * csu/abi-note.S: Use .p2align, not .align.
3877 2002-12-09  Ulrich Drepper  <drepper@redhat.com>
3879         * sysdeps/unix/sysv/linux/syscalls.list: Add __libc_creat and
3880         __libc_select aliases.
3882         * sysdeps/unix/sysv/linux/sigwaitinfo.c: Define __libc_sigwaitinfo
3883         alias.
3885         * sysdeps/unix/sysv/linux/sigwait.c: Define __libc_sigwait alias.
3887         * sysdeps/unix/sysv/linux/sigsuspend.c: Define __libc_sigsuspend alias.
3889         * sysdeps/unix/sysv/linux/poll.c: Define __libc_poll alias.
3891         * sysdeps/unix/syscalls.list: Define __libc_select alias.
3893         * sysdeps/posix/waitid.c: Define __libc_waitid alias.
3895         * sysdeps/posix/sigpause.c: Define __libc_sigpause and
3896         __libc___xpg_sigpause aliases.
3898         * sysdeps/generic/pselect.c: Define __libc_pselect alias.
3900         * misc/error.c: Remove use of USE_IN_LIBIO.
3902 2002-12-08  Roland McGrath  <roland@redhat.com>
3904         * elf/Makefile (tests): Uncomment tst-array[123].
3905         * Makeconfig (CPPFLAGS-.oS): Add -DLIBC_NONSHARED=1.
3906         * csu/elf-init.c: New file.
3907         * csu/Makefile (routines, static-only-routines): Add elf-init.
3908         * sysdeps/alpha/elf/start.S: Use __libc_csu_init in place of _init
3909         and __libc_csu_fini in place of _fini.
3910         * sysdeps/arm/elf/start.S: Likewise.
3911         * sysdeps/cris/elf/start.S: Likewise.
3912         * sysdeps/hppa/elf/start.S: Likewise.
3913         * sysdeps/i386/elf/start.S: Likewise.
3914         * sysdeps/ia64/elf/start.S: Likewise.
3915         * sysdeps/m68k/elf/start.S: Likewise.
3916         * sysdeps/mach/hurd/powerpc/static-start.S: Likewise.
3917         * sysdeps/mips/elf/start.S: Likewise.
3918         * sysdeps/powerpc/powerpc32/elf/start.S: Likewise.
3919         * sysdeps/powerpc/powerpc64/elf/start.S: Likewise.
3920         * sysdeps/s390/s390-32/elf/start.S: Likewise.
3921         * sysdeps/s390/s390-64/elf/start.S: Likewise.
3922         * sysdeps/sh/elf/start.S: Likewise.
3923         * sysdeps/sparc/sparc32/elf/start.S: Likewise.
3924         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
3925         * sysdeps/x86_64/elf/start.S: Likewise.
3927         * sysdeps/pthread/aio_notify.c (notify_func_wrapper): Take a malloc'd
3928         struct containing function ptr and value, free it.
3929         (__aio_notify_only): Allocate that and copy values from SIGEV into it.
3930         It's not safe to let the new thread use the SIGEV pointer.
3932 2001-10-20  Paul Eggert  <eggert@twinsun.com>
3934         * misc/error.c (strerror_r): Do not declare unless [!_LIBC].
3935         Do not check for HAVE_DECL_STRERROR_R missing unless STRERROR_R_CHAR_P.
3936         Use strerror_r that is only a macro, even if it is not a function.
3937         (strerror): Check for HAVE_DECL_STRERROR before declaring.
3938         (private_strerror): Use prototypes, not old-style function definition.
3939         (print_errno_message): New function.
3940         Support the POSIX 'int'-flavored strerror_r, as well as the traditional
3941         char*-flavored one.
3942         (error_tail, error, error_at_line): Use it.
3944 2002-12-07  Carlos O'Donell  <carlos@baldric.uwo.ca>
3946         * sysdeps/unix/sysv/linux/hppa/bits/shm.h: Added SHMLBA #define.
3948 2002-12-08  Ulrich Drepper  <drepper@redhat.com>
3950         * scripts/output-format.sed: Fix bug in one of the s expressions
3951         which used / for one too many things.
3953         * include/unistd.h: Declare __libc_close.
3955 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
3957         * sysdeps/generic/bits/stdio-lock.h (_IO_lock_trylock): New define.
3959 2002-12-07  Roland McGrath  <roland@redhat.com>
3961         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Reintroduce changes
3962         from 2002-12-06, but remove unnecessary memset call without removing
3963         necessary copy of initialization image.
3965         * Makerules ($(common-objpfx)format.lds): New target.
3966         (common-generated): Add it.
3967         ($(inst_libdir)/libc.so): Depend on that, and cat it into the result.
3968         * scripts/output-format.sed: New file.
3969         * Makefile (distribute): Add it.
3971 2002-12-07  Ulrich Drepper  <drepper@redhat.com>
3973         * sysdeps/generic/libc-tls.c: Include <sys/param.h>.
3974         Reported by Art Haas <ahaas@airmail.net>.
3976 2002-12-07  Kenneth W. Chen  <kenneth.w.chen@intel.com>
3978         * sysdeps/ia64/strncpy.S (strncpy): Clear ar.ec.  Fix .recovery4.
3980 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
3982         * string/test-strncpy.c (do_random_tests): Improve test coverage.
3984 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
3986         * test-skeleton.c (timeout_handler): Allow expected signal to be
3987         SIGALRM.
3989         * wctype/wcfuncs.c: Add libc_hidden_def for iswalnum.
3991         * sysdeps/posix/raise.c: Add libc_hidden_def for raise.
3993 2002-12-07  Jakub Jelinek  <jakub@redhat.com>
3995         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h [RTLD_PRIVATE_ERRNO]
3996         (SYSCALL_ERROR_HANDLER): Fix a pasto.
3997         Reported by Jeff Bailey <jbailey@nisa.net>.
3999 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
4001         * sysdeps/generic/libc-tls.c: Undo last patch.
4003         * include/wctype.h: Define iswalnum with libc_hidden_proto.
4005         * include/signal.h: Define raise with libc_hidden_proto.
4007         * sysdeps/unix/sysv/linux/fexecve.c (fexecve): Use __snprintf and
4008         __execve instead of snprintf and execve.
4010         * sysdeps/x86_64/fpu/libm-test-ulps: Relax errors for float and double
4011         again a bit.
4013 2002-12-06  Jakub Jelinek  <jakub@redhat.com>
4015         * posix/Makefile (annexc.out): Add -I../dir for all sorted-dirs.
4016         * posix/annexc.c (fmt, testfmt): Remove -D_LIBC.
4018 2002-12-06  Ulrich Drepper  <drepper@redhat.com>
4020         * misc/syslog.c (log_cleanup): New function.
4021         (openlog): Use log_cleanup instead of __libc_mutex_unlock.
4022         (closelog): Likewise.
4024         * elf/dl-close.c: Use __rtld_lock_* macros instead of __libc_lock_*.
4025         * elf/dl-iteratephdr.c: Likewise.
4026         * elf/dl-lookup.c: Likewise.
4027         * elf/dl-misc.c: Likewise.
4028         * elf/dl-open.c: Likewise.
4029         * elf/dl-support.c: Likewise.
4030         * elf/rtld.c: Likewise.
4031         * sysdeps/generic/ldsodefs.h: Likewise.
4032         * sysdeps/generic/bits/libc-lock.h: Define __rtld_lock_* macros.
4033         * sysdeps/mach/bits/libc-lock.h: Likewise.
4034         * sysdeps/mach/hurd/bits/libc-lock.h: Likewise.
4036 2002-12-06  Roland McGrath  <roland@redhat.com>
4038         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Cope with zero ALIGN.
4040         * malloc/hooks.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]
4041         (malloc_starter, memalign_starter, free_starter): Don't define these.
4042         * malloc/malloc.c [_LIBC && (USE___THREAD || (USE_TLS && !SHARED))]:
4043         Don't declare them either.
4044         * malloc/arena.c (ptmalloc_init) [_LIBC && USE_TLS]: Don't call
4045         __pthread_initialize, so no need to set hooks to *_starter.
4046         (ptmalloc_init_minimal): New function, broken out of ptmalloc_init.
4047         [_LIBC && SHARED && USE_TLS && !USE___THREAD]
4048         (__libc_malloc_pthread_startup): New function.
4049         * malloc/Versions (libc: GLIBC_PRIVATE): New set, add that function.
4051         * malloc/hooks.c (memalign_starter): New function.
4052         * malloc/malloc.c: Declare it.
4053         * malloc/arena.c (save_memalign_hook): New variable.
4054         (ptmalloc_init): Set __memalign_hook to memalign_starter.
4056         * elf/dl-minimal.c (free): Clear the memory.
4057         (calloc): Just call malloc, knowing all memory it returns is cleared.
4059         * sysdeps/generic/dl-tls.c (allocate_dtv): Use calloc instead of
4060         malloc and memset; calloc can avoid the zeroing when redundant.
4061         (_dl_tls_setup): Likewise.
4062         * elf/dl-load.c (decompose_rpath): Likewise.
4063         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Comment out memset
4064         call, since memory from sbrk at startup is already zero.
4066         * elf/rtld.c (_dl_start, dl_main): TLS_INIT_TP macro now returns an
4067         error string for failure, null for success.  Update callers.
4068         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Likewise.
4069         * elf/dl-load.c (_dl_map_object_from_fd): Likewise.
4071 2002-12-05  Jakub Jelinek  <jakub@redhat.com>
4073         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (sendfile): Change
4074         args to i:iipi.
4075         (readahead): Change args to i:iii.
4076         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list (readahead):
4077         Change args to i:iii.
4078         * sysdeps/unix/sysv/linux/mips/syscalls.list (readahead): Change
4079         args to i:iiii.
4081 2002-12-05  Roland McGrath  <roland@redhat.com>
4083         * stdlib/cxa_finalize.c (__cxa_finalize): When given a null argument,
4084         call all functions rather than none.
4085         Reported by Mark P. Mitchell <mark@codesourcery.com>.
4087 2002-12-04  Roland McGrath  <roland@redhat.com>
4089         * locale/localeinfo.h [NL_CURRENT_INDIRECT]: Use attribute_tls_model_ie
4090         on _nl_current_LC_* variables.
4092 2002-12-05  Ulrich Drepper  <drepper@redhat.com>
4094         * dirent/bug-readdir1.c (main): Don't call closedir, just close
4095         the file descriptor.  This is testing what the bug report was about.
4097 2002-12-04  Ulrich Drepper  <drepper@redhat.com>
4099         * po/be.po: New file.
4101         * argp/Makefile (tests): Add tst-argp1.
4103         * sysdeps/unix/sysv/linux/alpha/bits/siginfo.h: (struct sigevent):
4104         Change type of _attribute to void*.
4105         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h: Likewise.
4106         * sysdeps/unix/sysv/linux/bits/siginfo.h: Likewise.
4107         * sysdeps/unix/sysv/linux/mips/bits/siginfo.h: Likewise.
4108         * sysdeps/unix/sysv/linux/sparc/bits/siginfo.h: Likewise.
4109         * sysdeps/unix/sysv/linux/s390/bits/siginfo.h: Likewise.
4111 2002-12-04  Roland McGrath  <roland@redhat.com>
4113         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move all [USE_TLS]
4114         members to the end, so a libpthread compiled with !USE_TLS will still
4115         find other members properly.
4117         * sysdeps/i386/i486/bits/string.h (__strcpy_g): Add dummy output
4118         operand for DEST memory.  Fix dummy input operand to use SRC.
4119         Reported by Davin McCall <davmac@ozonline.com.au>.
4121         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Account for TCB
4122         alignment when initializing the DTV entry.
4124         * elf/dl-load.c (_dl_map_object_from_fd): If we hit a TLS segment
4125         when TLS has not been set up, try to set it up if we can.
4126         * elf/tst-tls4.c: Revert last change.
4127         * elf/tst-tls5.c: Likewise.
4128         * elf/tst-tls6.c: Likewise.
4129         * elf/tst-tls7.c: Likewise.
4130         * elf/tst-tls8.c: Likewise.
4131         * elf/tst-tls9.c: Likewise.
4133         * sysdeps/generic/dl-tls.c [SHARED] (_dl_tls_setup): New function.
4134         * sysdeps/generic/ldsodefs.h: Declare it.
4135         * elf/Versions (ld: GLIBC_PRIVATE): Add it.
4136         * sysdeps/generic/libc-tls.c (init_slotinfo): New static inline
4137         function, broken out of __libc_setup_tls.
4138         (init_static_tls): Likewise.
4139         (__libc_setup_tls): Call them.
4140         (_dl_tls_setup): New function, uses new subroutines.
4142         * elf/dl-close.c (free_slotinfo): Make argument pointer to pointer.
4143         Clear the pointer when returning true.
4144         (libc_freeres_fn) [SHARED]: If GL(dl_initial_dtv) is null, free the
4145         first element of the slotinfo list too.
4147         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Define only if
4148         [SHARED].
4150         * sysdeps/generic/ldsodefs.h (_dl_next_tls_modid): Declare as hidden.
4151         (_dl_determine_tlsoffset): Likewise.
4153         * elf/rtld.c (_dl_initial_error_catch_tsd): Renamed from
4154         startup_error_tsd, made global.
4155         (dl_main): Update initialization.
4156         * elf/dl-tsd.c: Likewise.
4157         * sysdeps/generic/ldsodefs.h: Declare it.
4159 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
4161         * manual/texinfo.tex: Update from latest upstream version.
4163 2002-12-03  Roland McGrath  <roland@redhat.com>
4165         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Include static TLS
4166         area surplus in calculation for sbrk call.
4168         * iconvdata/cp1125.c: New file.
4169         * iconvdata/Makefile (distribute): Add it.
4170         (modules): Add CP1125.
4171         (gen-8bit-gap-modules): Add cp1125.
4172         * iconvdata/gconv-modules: Add CP1125, alias RUSCII.
4173         * iconvdata/tst-tables.sh: Add CP1125 to the list to test.
4175 2002-12-03  Andreas Jaeger  <aj@suse.de>
4177         * sysdeps/x86_64/fpu/libm-test-ulps: Regenerated.
4179 2002-12-03  Ulrich Drepper  <drepper@redhat.com>
4181         * sysdeps/posix/system.c (do_system): Make signal handler
4182         installation thread safe.
4184 2002-12-02  Roland McGrath  <roland@redhat.com>
4186         * sysdeps/unix/sysv/linux/alpha/syscalls.list (readahead): Change
4187         caller from EXTRA to -.
4188         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
4189         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
4190         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
4192 2002-12-02  Carlos O'Donell  <carlos@baldric.uwo.ca>
4194         * sysdeps/hppa/fpu/fesetround.c (fesetround): Use ~FE_DOWNWARD so both
4195         bits of RM are cleared.
4197 2002-12-02  Roland McGrath  <roland@redhat.com>
4199         * elf/tst-tls4.c: Define an unused TLS variable here, so that no lazy
4200         TLS setup is required.
4201         * elf/tst-tls5.c: Likewise.
4202         * elf/tst-tls6.c: Likewise.
4203         * elf/tst-tls7.c: Likewise.
4204         * elf/tst-tls8.c: Likewise.
4205         * elf/tst-tls9.c: Likewise.
4207         * elf/rtld.c (dl_main): Remove [! SHARED] conditional from
4208         `if (GL(dl_tls_max_dtv_idx) > 0)' tests for doing TLS setup.
4209         * elf/dl-close.c (libc_freeres_fn): Check GL(dl_tls_dtv_slotinfo_list)
4210         for being null before calling free_slotinfo.
4211         * elf/dl-load.c (_dl_map_object_from_fd) [SHARED]: For PT_TLS in
4212         dynamic loading, bail with error if GL(dl_tls_max_dtv_idx) is zero.
4214 2002-11-30  Bruno Haible  <bruno@clisp.org>
4216         * iconv/gconv.h (__gconv_btowc_fct): New typedef.
4217         (struct __gconv_step): New field __btowc_fct.
4218         * wcsmbs/btowc.c (__btowc): Use the __btowc_fct shortcut if possible.
4219         * iconv/gconv_int.h (__BUILTIN_TRANSFORM): Renamed from
4220         __BUILTIN_TRANS.
4221         (__gconv_btwoc_ascii): New declaration.
4222         * iconv/gconv_simple.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
4223         (__gconv_btwoc_ascii): New function.
4224         * iconv/gconv_builtin.h: Add BtowcFct argument to all
4225         BUILTIN_TRANSFORMATION invocations.
4226         * iconv/gconv_conf.c (BUILTIN_TRANSFORMATION): Add BtowcFct argument.
4227         * iconv/iconvconfig.c (BUILTIN_TRANSFORMATION): Likewise.
4228         * iconv/gconv_builtin.c (map): New field btowc_fct.
4229         (BUILTIN_TRANSFORMATION): Add BtowcFct argument. Use it to initialize
4230         btowc_fct field.
4231         (__gconv_get_builtin_trans): Initialize __btowc_fct field.
4232         * iconv/gconv_cache.c (find_module): Initialize __btowc_fct field.
4233         * iconv/gconv_db.c (gen_steps, increment_counter): Likewise.
4234         * wcsmbs/wcsmbsload.c (to_wc, to_mb): Likewise.
4235         * iconv/skeleton.c: Document STORE_REST and FROM_ONEBYTE.
4236         (gconv_init): Initialize __btowc_fct field.
4237         Undefine EXTRA_LOOP_ARGS and FROM_ONEBYTE at the end.
4238         * iconv/loop.c: Document ONEBYTE_BODY.
4239         (gconv_btowc, FROM_ONEBYTE): Define if ONEBYTE_BODY is defined.
4240         Undefine ONEBYTE_BODY at the end.
4241         * iconvdata/8bit-generic.c (ONEBYTE_BODY): New macro.
4242         * iconvdata/8bit-gap.c (NONNUL): New macro.
4243         (BODY for FROM_LOOP): Use it.
4244         (ONEBYTE_BODY): New macro.
4245         * iconvdata/isiri-3342.c (HAS_HOLES): Set to 1.
4246         (NONNUL): New macro.
4247         * iconvdata/ansi_x3.110.c (ONEBYTE_BODY): New macro.
4248         * iconvdata/armscii-8.c (ONEBYTE_BODY): New macro.
4249         * iconvdata/cp1255.c (ONEBYTE_BODY): New macro.
4250         * iconvdata/cp1258.c (ONEBYTE_BODY): New macro.
4251         * iconvdata/tcvn5712-1.c (ONEBYTE_BODY): New macro.
4252         * iconvdata/big5.c (ONEBYTE_BODY): New macro.
4253         * iconvdata/big5hkscs.c (ONEBYTE_BODY): New macro.
4254         * iconvdata/euc-cn.c (ONEBYTE_BODY): New macro.
4255         * iconvdata/euc-jp.c (ONEBYTE_BODY): New macro.
4256         * iconvdata/euc-jisx0213.c (ONEBYTE_BODY): New macro.
4257         * iconvdata/euc-kr.c (ONEBYTE_BODY): New macro.
4258         * iconvdata/euc-tw.c (ONEBYTE_BODY): New macro.
4259         * iconvdata/gbk.c (ONEBYTE_BODY): New macro.
4260         * iconvdata/gb18030.c (ONEBYTE_BODY): New macro.
4261         * iconvdata/ibm932.c: Include <stdbool.h>.
4262         (TRUE, FALSE): Remove macros.
4263         (BODY for FROM_LOOP): Remove unused variable rp1.
4264         (ONEBYTE_BODY): New macro.
4265         (BODY for TO_LOOP): Use bool.
4266         * iconvdata/ibm932.h (__ibm932sb_to_ucs4_idx): Remove array.
4267         * iconvdata/ibm943.c: Include <stdbool.h>.
4268         (TRUE, FALSE): Remove macros.
4269         (BODY for FROM_LOOP): Remove unused variable rp1.
4270         (ONEBYTE_BODY): New macro.
4271         (BODY for TO_LOOP): Use bool.
4272         * iconvdata/ibm943.h (__ibm943sb_to_ucs4_idx): Remove array.
4273         * iconvdata/iso8859-1.c (ONEBYTE_BODY): New macro.
4274         * iconvdata/iso_6937-2.c (ONEBYTE_BODY): New macro.
4275         * iconvdata/iso_6937.c (ONEBYTE_BODY): New macro.
4276         * iconvdata/johab.c (ONEBYTE_BODY): New macro.
4277         * iconvdata/sjis.c (ONEBYTE_BODY): New macro.
4278         * iconvdata/shift_jisx0213.c (ONEBYTE_BODY): New macro.
4279         * iconvdata/t.61.c (ONEBYTE_BODY): New macro.
4280         * iconvdata/uhc.c (ONEBYTE_BODY): New macro.
4281         * iconvdata/gbbig5.c: Tweak comment.
4283 2002-12-02  Ulrich Drepper  <drepper@redhat.com>
4285         * po/fi.po: Update from translation team.
4287 2002-12-01  Roland McGrath  <roland@redhat.com>
4289         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Fix condition
4290         testing getdents64 return value.
4292         * scripts/versions.awk: Don't pass -n flag to sort command.
4294         * posix/bug-regex13.c: Include <string.h>.
4296         * sysdeps/generic/libc-start.c (__libc_start_main): Do
4297         DL_SYSDEP_OSCHECK here.
4298         * sysdeps/unix/sysv/linux/init-first.c (init): Not here.
4299         * sysdeps/unix/sysv/linux/dl-osinfo.h: Include <fcntl.h>.
4301         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Bail if
4302         argument TCBSIZE <= TLS_INIT_TCB_SIZE, not just if it's zero.
4304         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Check l_tls_offset
4305         instead of l_type to decide whether to use TLS_DTV_UNALLOCATED.
4307         * include/link.h: Comment typo fix.
4309 2002-12-01  Roland McGrath  <roland@frob.com>
4311         * sysdeps/mach/hurd/bits/posix_opt.h (_POSIX_FSYNC): Set to 200112L.
4312         (_POSIX_SPAWN, _POSIX_MAPPED_FILES, _POSIX_MEMLOCK_RANGE,
4313         _POSIX_MEMORY_PROTECTION): Likewise.
4314         (_POSIX_POLL, _POSIX_SELECT): Removed.
4316 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
4318         * sysdeps/unix/sysv/linux/bits/posix_opt.h: Define macros which
4319         require it to 200112L.  Remove _POSIX_POLL and _POSIX_SELECT.
4321 2002-11-28  Jakub Jelinek  <jakub@redhat.com>
4323         * sysdeps/unix/alpha/sysdep.S: Change defined(USE___THREAD) to
4324         USE___THREAD.
4325         * sysdeps/unix/sysv/linux/alpha/sysdep.h (inline_syscall*): Avoid
4326         "=v" constraints.
4328 2002-11-28  Ulrich Drepper  <drepper@redhat.com>
4330         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Don't trash the CPU's
4331         branch prediction buffers by using unpaired call/ret.
4333 2002-11-27  Ulrich Drepper  <drepper@redhat.com>
4335         * sysdeps/unix/sysv/linux/i386/sysdep.h (ASMFMT_2): Fix typo in
4336         first parameters constraint string.
4337         (ASMFMT_3): Likewise.  Patch by stefan.lauterbach@mincom.de.
4339 2002-11-27  Isamu Hasegawa  <isamu@yamato.ibm.com>
4341         * posix/regcomp.c (parse_expression): Set the bit since the back
4342         reference is used in the regular expression.
4343         * posix/regex_internal.c (re_node_set_init_1): Make it clean in case
4344         of malloc failure.
4345         (re_node_set_init_copy): Likewise.
4346         * posix/regex_internal.h (state_array_t): New structure.
4347         (re_sub_match_last_t): Likewise.
4348         (re_sub_match_top_t): Likewise.
4349         (re_match_context_t): Add new members.
4350         (re_dfa_t): Likewise.
4351         * posix/regexec.c (re_search_internal): Invoke prune_impossible_nodes
4352         to check the matching is really correct, and retry if failed.
4353         Move the routin pruning the impossible nodes from here, ...
4354         (prune_impossible_nodes): To this function.
4355         (check_matching): Invoke check_subexp_matching_top, and replace
4356         redundant checking with transit_state_bkref invocation.
4357         (proceed_next_node): Replace strncmp with memcmp.  Reported by
4358         Paolo Bonzini  <bonzini@gnu.org>.
4359         (update_cur_sifted_state): Remove search_subexp invocation.
4360         (search_subexp): Remove this function.
4361         (check_dst_limits_calc_pos): Use search_cur_bkref_entry for
4362         optimization.
4363         (sift_states_bkref): Use search_cur_bkref_entry for optimization.
4364         Remove unused invocation of match_ctx_add_entry.
4365         (transit_state): Invoke check_subexp_matching_top.
4366         (check_subexp_matching_top): New function.
4367         (transit_state_bkref): Remove unused array.
4368         Merge transit_state_bkref_loop.
4369         (transit_state_bkref_loop): Use get_subexp instead of
4370         sift_states_backward.  Use search_cur_bkref_entry for optimization.
4371         Merge this function to transit_state_bkref.
4372         (get_subexp): New function.
4373         (get_subexp_sub): Likewise.
4374         (find_subexp_node): Likewise.
4375         (check_arrival): Likewise.
4376         (check_arrival_expand_ecl): Likewise.
4377         (check_arrival_expand_ecl_sub): Likewise.
4378         (expand_bkref_cache): Likewise.
4379         (match_ctx_init): Initialize new members.
4380         (match_ctx_clean): New function.
4381         (match_ctx_free): Release new members.
4382         (match_ctx_free_subtops): New function.
4383         (match_ctx_add_entry): Fix indent.
4384         (search_cur_bkref_entry): New function.
4385         (match_ctx_add_subtop): Likewise.
4386         (match_ctx_add_sublast): Likewise.
4388 2002-11-25  Ulrich Drepper  <drepper@redhat.com>
4390         * iconv/Makefile (tests): Remove tst-iconv4.c
4391         * iconv/tst-iconv4.c: Moved to...
4392         * iconvdata/tst-iconv4.c: ...here.  New file.
4393         * iconvdata/Makefile (tests): Add tst-iconv4.  Add dependencies.
4395 2002-11-25  Roland McGrath  <roland@redhat.com>
4397         * inet/test-ifaddrs.c (main: addr_string): Handle null SA.
4398         Grok AF_LINK if defined.
4399         From Momchil Velikov <velco@fadata.bg>.
4401         * sysdeps/gnu/ifaddrs.c (getifaddrs): If ioctl fails for netmask,
4402         brdaddr, or dstaddr, just set those pointers to null and don't fail.
4403         Reported by Momchil Velikov <velco@fadata.bg>.
4405         * sysdeps/generic/ifreq.h (__if_nextreq) [_HAVE_SA_LEN]: If sa_len
4406         is > sizeof IFR->ifa_addr, advance past the whole longer length.
4407         (__ifreq): Count up NIFS that way too.
4408         Reported by Momchil Velikov <velco@fadata.bg>.
4410         * sysdeps/mach/hurd/lchmod.c: Include <fcntl.h>.
4412         * sysdeps/mach/hurd/i386/init-first.c: Include <ldsodefs.h>
4413         and <fpu_control.h>.
4415 2002-11-24  Ulrich Drepper  <drepper@redhat.com>
4417         * elf/elf.h (EM_ST19): Fix typo.
4419 2002-11-25  Jakub Jelinek  <jakub@redhat.com>
4421         * include/errno.h (__set_errno): Define as errno = val
4422         unconditionally.
4424 2002-11-24  Roland McGrath  <roland@redhat.com>
4426         * sysdeps/posix/readv.c: Include <errno.h>, use __set_errno macro.
4427         * sysdeps/posix/writev.c: Likewise.
4428         From Momchil Velikov <velco@fadata.bg>.
4430         * elf/dl-error.c [! _LIBC_REENTRANT]: Use a static variable instead of
4431         calling *GL(dl_error_catch_tsd) for a thread-local location.
4432         * elf/rtld.c (startup_error_tsd): Conditionalize on [_LIBC_REENTRANT].
4433         (dl_main): Same for GL(dl_error_catch_tsd) initialization.
4434         * elf/dl-tsd.c: Conditionalize contents on [_LIBC_REENTRANT].
4436         * libio/iofflush.c: Add libc_hidden_def.
4437         * libio/iofwrite.c: Likewise.
4438         * sysdeps/generic/sigtimedwait.c: Likewise.
4439         * sysdeps/generic/sigwaitinfo.c: Likewise.
4440         * sysdeps/posix/sigwait.c: Likewise.
4441         Reported by Momchil Velikov <velco@fadata.bg>.
4443         * inet/inet_lnaof.c (inet_lnaof): Change return type to in_addr_t
4444         to match <arpa/inet.h> declaration.
4445         * inet/inet_netof.c (inet_netof): Likewise.
4446         * inet/inet_mkadr.c (inet_makeaddr): Likewise for argument types.
4447         Reported by Momchil Velikov <velco@fadata.bg>.
4449         * configure.in: Skip AUTOCONF check under --without-cvs.
4450         * configure: Regenerated.
4452         * posix/Makefile (headers): Add bits/pthreadtypes.h.
4453         * sysdeps/unix/sysv/linux/Makefile (sysdep_heaers): Don't add it here.
4454         * sysdeps/unix/sysv/linux/Dist: Remove it from the list.
4456 2002-11-24  Andreas Schwab  <schwab@suse.de>
4458         * sysdeps/unix/sysv/linux/m68k/sysdep.h: Support inline syscall
4459         with six arguments.
4461 2002-11-19  Jim Meyering  <jim@meyering.net>
4463         * time/mktime.c (__mon_yday, __mktime_internal) [!_LIBC]: Declare
4464         as `static'.
4465         * time/strptime.c (__mon_yday) [!_LIBC]: Declare as `static'.
4467 2002-11-23  Roland McGrath  <roland@redhat.com>
4469         * scripts/abilist.awk: Avoid strtonum function, not there in mawk.
4470         Just produce hex output for datum sizes.
4472         * elf/Makefile ($(objpfx)librtld.mk): Tighten up regexp.
4473         Reported by Luca Barbieri <ldb@ldb.ods.org>.
4475 2002-11-20  Steven Munroe  <sjmunroe@us.ibm.com>
4477         * sysdeps/unix/sysv/linux/powerpc/bits/msq.h (msqid_ds)
4478         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
4479         and __unused3 fields.
4480         * sysdeps/unix/sysv/linux/powerpc/bits/sem.h (semid_ds)
4481         [__WORDSIZE == 32]: Only PPC32 requires __unused1
4482         and __unused2 fields.
4483         * sysdeps/unix/sysv/linux/powerpc/bits/shm.h (shmid_ds)
4484         [__WORDSIZE == 32]: Only PPC32 requires __unused1, __unused2,
4485         __unused3, and __unused4 fields.
4487         * csu/gmon-start.c (__gmon_start__): Always use TEXT_START macro to
4488         obtain lowest address for profiling in __monstartup call.
4490 2002-11-21  Roland McGrath  <roland@redhat.com>
4492         * sysdeps/ia64/fpu/Makefile (libm-sysdep_routines): Remove redunant
4493         $(calls) $(calls:=f) $(long-c-$(long-double-fcts)).
4495         * locale/localeinfo.h (struct locale_data): Revert last change.
4497         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_exit_group): Add it.
4498         From Ian Wienand <ianw@gelato.unsw.edu.au>.
4500         * sysdeps/unix/sysv/linux/ia64/sysdep.h (__NR_pread): Define to
4501         __NR_pread64 if not defined.
4502         (__NR_pwrite): Define to __NR_pwrite64 if not defined.
4503         From Ian Wienand <ianw@gelato.unsw.edu.au>.
4505 2002-11-21  Roland McGrath  <roland@frob.com>
4507         * sysdeps/mach/hurd/i386/init-first.c (posixland_init): Set
4508         __libc_multiple_libcs here.  Call __setfpucw.
4510 2002-11-21  Ulrich Drepper  <drepper@redhat.com>
4512         * elf/Makefile (tests): Don't run test-arrayX tests for now.
4514         * sysdeps/unix/sysv/linux/bits/sched.h: Add new CLONE_* flags.
4515         * sysdeps/unix/sysv/linux/i386/clone.S: Add support for
4516         CLONE_CHILD_*TID flags.
4518 2002-11-20  Andreas Jaeger  <aj@suse.de>
4520         * sysdeps/unix/sysv/linux/x86_64/sigcontextinfo.h (SIGCONTEXT):
4521         We pass struct ucontext on x86-64.
4522         (GET_PC): Adjust.
4523         (GET_FRAME): Adjust.
4524         (GET_STACK): Adjust.
4526 2002-11-20  Roland McGrath  <roland@redhat.com>
4528         * sysdeps/powerpc/powerpc32/dl-machine.c [! SHARED]: Further
4529         conditionalize [! DO_VERSIONING] #error.
4531         * scripts/abilist.awk: Grok function descriptor symbols.
4533         * intl/tst-gettext.c (main): Check return values from setlocale.
4534         Add necessary unsetenv's to make LANG=existing-locale check work.
4536         * intl/tst-gettext.sh: Use mkdir -p.  Copy test files unconditionally,
4537         so aborted prior runs don't confuse things.
4539         * locale/localeinfo.h (struct locale_data: union locale_data_value):
4540         Use uintptr_t instead of unsigned int for `word' member.
4541         (_NL_CURRENT_WORD): Cast to uint32_t.
4543         * posix/bug-regex5.c (main): Use union to extract _NL_COLLATE_NRULES
4544         value.
4546 2002-11-20  Ulrich Drepper  <drepper@redhat.com>
4548         * elf/tls-macros.h: Add IA-64 definitions.
4549         Patch by Ian Wienand <ianw@gelato.unsw.edu.au>.
4551         * iconv/Makefile (tests): Add tst-iconv4.
4552         * iconv/tst-iconv4.c: New file.
4554         * iconv/gconv_simple.c (internal_ucs4le_loop_unaligned): Return
4555         __GCONV_EMPTY_INPUT only if input is really empty.  Otherwise
4556         __GCONV_INCOMPLETE_INPUT.
4557         (ucs4le_internal_loop): Likewise.
4558         (ucs4le_internal_loop_unaligned): Likewise.
4559         * iconvdata/unicode.c (PREPARE_LOOP): Likewise.
4560         * iconvdata/utf-16.c (PREPARE_LOOP): Likewise.
4561         * iconvdata/utf-32.c (PREPARE_LOOP): Likewise.
4563         * iconv/loop.c (LOOPFCT): First test for empty input then for full
4564         output buffer.
4566         * inet/getnameinfo.c: Use extend_alloca where appropriate.
4567         * sysdeps/posix/getaddrinfo.c: Likewise.
4569         * include/alloca.h (extend_alloca): New define.  Based on stack
4570         direction it'll try to append to the previouls allocated buffer.
4572 2002-11-07  Thorsten Kukuk  <kukuk@suse.de>
4574         * sysdeps/posix/getaddrinfo.c (gaih_inet): If AF_UNSPEC is set,
4575         use the same service for AF_INET and AF_INET6.
4577 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
4579         * intl/localealias.c (read_alias_file): Use only about 400 bytes
4580         of stack space instead of 16k.
4582 2002-11-18  Wolfram Gloger  <wg@malloc.de>
4584         * malloc/arena.c
4585         (ptmalloc_lock_all, ptmalloc_unlock_all, ptmalloc_unlock_all2): Do
4586         nothing if not initialized.  Bug report from Marcus Brinkmann
4587         <Marcus.Brinkmann@ruhr-uni-bochum.de>.
4589 2002-11-19  Roland McGrath  <roland@redhat.com>
4591         * posix/Versions (libc: GLIBC_2.3.2): Add sched_getaffinity and
4592         sched_setaffinity.
4594         * configure.in (libc_cv_gcc_dwarf2_unwind_info check): Use libraries
4595         `-lgcc -lgcc_eh -lgcc', not just `-lgcc -lgcc_eh' in link commands for
4596         test leading to libc_cv_gcc_dwarf2_unwind_info=no_registry_needed.
4597         * configure: Regenerated.
4599 2002-11-19  Ulrich Drepper  <drepper@redhat.com>
4601         * include/dlfcn.h: __libc_dlopen is now a macro calling
4602         __libc_dlopen_mode with the extra parameter RTLD_LAZY.
4603         (__libc_dlopen_mode): New prototype.
4604         * elf/dl-libc.c (__libc_dlopen_mode): Renamed from __libc_dlopen.  Add
4605         new parameter.  Store new parameter in mode field of structure passed
4606         to do_dlopen.
4607         (struct do_dlopen_args): Add new field mode.
4608         (do_dlopen): Pass mode from parameter structure to _dl_open.
4610 2002-11-11  Randolf Chung  <tausq@debian.org>
4612         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h [__USE_FILE_OFFSET64]
4613         (F_GETLK, F_SETLK, F_SETLKW): Define to F_*64 versions.
4614         * sysdeps/unix/sysv/linux/hppa/fcntl.c: New file.
4616         * sysdeps/hppa/fpu/libm-test-ulps: New file (generated).
4618         * sysdeps/hppa/Makefile (CFLAGS-rtld.c): New variable.
4619         Set -mdisable-fpregs for this file.
4621 2002-11-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
4623         * sysdeps/unix/sysv/linux/configure.in:
4624         Make 2.4.19 minimum linux kernel for hppa, and add unwind symbols
4625         from gcc-3.0 era for backwards compatibility.
4626         * sysdeps/unix/sysv/linux/configure: Regenerate.
4628         * sysdeps/unix/sysv/linux/hppa/sys/ucontext.h:
4629         Define mcontext_t as a sigcontext.
4631 2002-11-18  Roland McGrath  <roland@redhat.com>
4633         * dlfcn/dlerror.c (fini): New function, __attribute__ ((destructor)).
4634         Free memory in `last_result' if it was used.
4636         * resolv/nss_dns/dns-network.c (getanswer_r): In BYNAME case, search
4637         all aliases for one that matches the "<dotted-quad>.IN-ADDR.ARPA" form.
4638         Do the parsing inline instead of copying strings and calling
4639         inet_network, and properly skip all alias names not matching the form.
4641         * manual/pattern.texi (Variable Substitution): Fix # and ## examples.
4643 2002-11-17  Ulrich Drepper  <drepper@redhat.com>
4645         * manual/pattern.texi (Wordexp Example): Fix sample code.
4647         * sysdeps/unix/sysv/linux/i386/clone.S: Initialize word in the
4648         childs stack which will be loaded into the %esi register.
4650 2002-11-14  Paul Eggert  <eggert@twinsun.com>
4652         * resolv/nss_dns/dns-network.c (getanswer_r): Check for buffer
4653         overflow when skipping the question part and when unpacking aliases.
4655 2002-11-15  Roland McGrath  <roland@redhat.com>
4657         * math/Makefile (libm-calls): Remove s_copysign, s_isinf, s_isnan,
4658         s_finite, s_modf, s_scalbn, s_frexp, m_ldexp, s_signbit.
4659         Instead add $(calls:s_%=m_%) to get m_* versions of them all.
4661 2002-11-15  Jakub Jelinek  <jakub@redhat.com>
4663         * sysdeps/i386/dl-machine.h (elf_machine_rela): Handle R_386_COPY.
4664         * sysdeps/arm/dl-machine.h (elf_machine_rela): Handle R_ARM_COPY.
4666 2002-11-15  Roland McGrath  <roland@redhat.com>
4668         * math/Makefile (libm-calls): Change s_ldexp to m_ldexp.
4669         * Makerules ($(+sysdir_pfx)sysd-rules): Emit pattern rules for m_%.[Sc]
4670         from sysdeps/.../s_%.[Sc] with commands $(+make-include-of-dep).
4671         (+make-include-of-dep): New canned sequence.
4673         * stdlib/canonicalize.c (__realpath): Check for malloc failure.
4674         From Dmitry V. Levin <ldv@altlinux.org>.
4676 2002-11-14  Roland McGrath  <roland@redhat.com>
4678         * sysdeps/generic/errno.c (__libc_errno): Remove alias.
4679         * inet/herrno.c (__libc_h_errno): Likewise.
4680         * resolv/res_libc.c (__libc_res): Likewise.
4681         [USE___THREAD]: Use this in place of [USE_TLS && HAVE___THREAD].
4682         (__res_state) [! USE___THREAD]: Don't define as weak.
4683         * csu/Versions: Revert last change.
4684         * resolv/Versions: Revert last change.
4686         * Makerules ($(common-objpfx)%.make): New pattern rule.
4687         * tls.make.c: New file.
4688         * Makefile (distribute): Add it.
4690         * sysdeps/generic/errno.c [! USE___THREAD]
4691         [HAVE_ELF && SHARED && DO_VERSIONING] (errno, _errno): Declare these
4692         with compat_symbol so they are not link-time visible.
4693         [! USE___THREAD] (__libc_errno): New alias for errno.
4694         * csu/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
4695         Add __libc_errno here.
4696         * inet/herrno.c [USE___THREAD]: Use this conditional
4697         in place of [USE_TLS && HAVE___THREAD].
4698         [! USE___THREAD] [HAVE_ELF && SHARED && DO_VERSIONING]
4699         (h_errno, _h_errno): Declare these with compat_symbol so they are not
4700         link-time visible.
4701         [! USE___THREAD] (__libc_h_errno): New alias for h_errno.
4702         * resolv/res_libc.c [! USE___THREAD]
4703         [HAVE_ELF && SHARED && DO_VERSIONING] (_res): Likewise.
4704         (_res): Use __attribute__ ((section (".bss"))) so we can have an alias.
4705         (__libc_res): Define as alias for _res.
4706         * resolv/Versions [!(USE_TLS && HAVE___THREAD)] (libc: GLIBC_PRIVATE):
4707         Add __libc_h_errno and __libc_res here.
4709 2002-11-14  Jakub Jelinek  <jakub@redhat.com>
4711         * csu/Versions (errno): Move STT_TLS symbol to GLIBC_PRIVATE for now.
4712         * resolv/Versions (h_errno, _res): Likewise.
4714 2002-11-14  Roland McGrath  <roland@redhat.com>
4716         * Makerules (%.dynsym): Remove $(objpfx) from target and dep.
4717         (%.symlist): Likewise.
4719 2002-11-13  Roland McGrath  <roland@redhat.com>
4721         * scripts/abilist.awk: New file.
4722         * Makefile (distribute): Add it.
4723         * Makerules ($(objpfx)%.dynsym, $(objpfx)%.symlist): New rules.
4724         (tests): Depend on .symlist file for each $(install-lib.so-versioned).
4725         [$(subdir) = elf] (tests): Depend on libc.symlist.
4726         (generated, common-generated): Add those files.
4728         * aclocal.m4 (LIBC_PROG_BINUTILS): Check for objdump, set OBJDUMP.
4729         * configure: Regenerated.
4730         * config.make.in (OBJDUMP): New variable, substituted by configure.
4732         * malloc/mcheck.c (struct hdr): New members `block' and `magic2'.
4733         (mallochook, reallochook): Set them up.
4734         (checkhdr): Check HDR->magic2 value.
4735         (freehook): Reset HDR->magic2.
4736         (memalignhook): New static function.
4737         (old_memalign_hook): New static variable.
4738         (mcheck, reallochook): Set __memalign_hook to memalignhook.
4740         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_storage): Zero the space
4741         for the new TCB.
4743 2002-11-13  Andreas Jaeger  <aj@suse.de>
4745         * sysdeps/unix/sysv/linux/x86_64/sigaction.c: Check for visibility
4746         attribute.
4747         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
4749 2002-11-11  Paul Eggert  <eggert@twinsun.com>
4751         * manual/crypt.texi (Cryptographic Functions): Mention that
4752         the MD5 one-way algorithm is compatible with BSD's.
4754 2002-11-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
4756         * posix/regex_internal.c (re_string_skip_chars): Also return the last
4757         wide character.
4758         (re_string_reconstruct): Calculate the context by itself when the
4759         offset points out of the valid range.
4760         (re_string_context_at): Use wide character when MB_CUR_MAX > 1.
4761         * posix/regex_internal.h (WIDE_NEWLINE_CHAR): New macro.
4762         (IS_WIDE_WORD_CHAR): New macro.
4763         (IS_WIDE_NEWLINE): New macro.
4765 2002-11-12  Andreas Jaeger  <aj@suse.de>
4767         * sysdeps/x86_64/strchr.S: Don't use one register for two
4768         purposes, this fixes a bug noticed by test-strchr.c.
4770         * sysdeps/x86_64/strcat.S: Fix algorithm to align source pointer
4771         correctly.
4773 2002-11-12  Roland McGrath  <roland@redhat.com>
4775         * libio/libioP.h [_LIBC && !SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_1)]
4776         (_G_IO_NO_BACKWARD_COMPAT): Define it.
4778         * sysdeps/ia64/dl-fptr.c [_LIBC_REENTRANT]: Include <ia64intrin.h>
4779         instead of <pt-machine.h>.
4780         [_LIBC_REENTRANT] (lock, unlock): Use __sync_lock_* macros instead of
4781         testandset.
4782         From Ian Wienand <ianw@gelato.unsw.edu.au>.
4784 2002-11-10  Roland McGrath  <roland@redhat.com>
4786         * libio/bug-wfflush.c (do_test): Call rewind instead of fsetpos.
4787         Call fputs instead of fwprintf (simpler to follow in debugger).
4789         * crypt/md5-crypt.c: Doc fix.
4791         * sysdeps/unix/make-syscalls.sh: Insert $(make-target-directory) at
4792         the beginning of generated target commands.
4794         * csu/Makefile ($(objpfx)crti.o, $(objpfx)crtn.o): Add explicit
4795         dependencies for these in case implicit rule search skipped the
4796         nonexistent source directory.
4797         * sysdeps/gnu/Makefile ($(objpfx)errlist.d): Give this rule all the
4798         files with $(object-suffixes) as targets too.
4799         * Makerules [no_deps && objpfx] (before-compile): Add $(objpfx).
4800         and a target for it using $(make-target-directory).
4802         * Rules (before-compile): Add $(common-objpfx)bits/stdio-lim.h.
4804 2002-11-10  Roland McGrath  <roland@frob.com>
4806         * sysdeps/unix/sysv/linux/bits/pthreadtypes.h: Moved to ...
4807         * sysdeps/generic/bits/pthreadtypes.h: ... here.
4809         * sysdeps/mach/hurd/fcntl.c (__libc_fcntl): Treat a struct flock with
4810         l_start == 0 and l_len == 1 as we do l_len == 0.
4812 2002-11-10  Ulrich Drepper  <drepper@redhat.com>
4814         * po/da.po: Update from translation team.
4816 2002-11-10  Roland McGrath  <roland@redhat.com>
4818         * config.make.in (includedir): New variable, substituted by configure.
4819         Reported missing by Jocelyn Fournier <joc@presence-pc.com>.
4820         * Makeconfig (includedir): Use $(prefix), not $(exec_prefix).
4822 2002-11-10  Andreas Jaeger  <aj@suse.de>
4824         * sysdeps/unix/sysv/linux/x86_64/sys/ucontext.h (enum): Add
4825         REG_OLDMASK and REG_CR2 to synch with kernel header.
4826         (NGREG): Increase.
4828         * nss/getXXent.c (GETFUNC_NAME): Use union type to avoid strict
4829         aliasing problem.
4830         * nss/getXXbyYY_r.c (INTERNAL): Likewise.
4831         * nss/getnssent_r.c (__nss_getent_r): Likewise.
4832         (__nss_setent): Likewise.
4833         (__nss_getent_r): Likewise.
4834         * inet/getnetgrent_r.c (innetgr): Likewise.
4835         (__internal_setnetgrent_reuse): Likewise.
4836         (internal_getnetgrent_r): Likewise.
4837         * inet/ether_hton.c (ether_hostton): Likewise.
4838         * inet/ether_ntoh.c (ether_ntohost): Likewise.
4839         * sunrpc/netname.c (netname2user): Likewise.
4840         * sunrpc/publickey.c (getpublickey): Likewise.
4841         (getsecretkey): Likewise.
4843 2002-11-09  Marcus Brinkmann  <marcus@gnu.org>
4845         * sysdeps/mach/hurd/i386/ioperm.c (ioperm): Correct off by one
4846         error in range calculation.
4848 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
4850         * string/test-strspn.c (do_test): Ensure zero termination.
4851         * string/test-strpbrk.c (do_test): Likewise.
4852         * string/test-strncmp.c (stupid_strncmp): Use strnlen, not strlen.
4853         * string/test-strncpy.c (stupid_strncpy): Likewise.
4854         * string/test-stpncpy.c (stupid_stpncpy): Likewise.
4856 2002-10-08  Roland McGrath  <roland@redhat.com>
4858         * string/test-string.h (test_init): Fill BUF1 and BUF2 with
4859         nonzero characters.
4861 2002-09-22  H.J. Lu  <hjl@gnu.org>
4863         * sysdeps/unix/sysv/linux/mmap64.c (MMAP2_PAGE_SHIFT): Renamed
4864         from PAGE_SHIFT.  Define if not defined.  Check MMAP2_PAGE_SHIFT
4865         only if __NR_mmap2 is defined.
4867         * sysdeps/unix/sysv/linux/powerpc/mmap64.c: Moved to ...
4868         * sysdeps/unix/sysv/linux/mmap64.c: ... here.
4869         * sysdeps/unix/sysv/linux/hppa/mmap64.c: File removed.
4870         * sysdeps/unix/sysv/linux/sparc/sparc32/mmap64.c: FIle removed,
4872 2002-11-08  Jakub Jelinek  <jakub@redhat.com>
4874         * posix/bug-regex13.c (tests): Add new test.
4876         * string/test-strchr.c (stupid_strchr): New function.
4877         (do_random_tests): Make sure the string is zero terminated.
4878         * string/test-strpbrk.c (stupid_strpbrk): New function.
4879         (do_random_tests): Make sure the string is zero terminated.
4880         * string/test-strcmp.c (stupid_strcmp): New function.
4881         (do_random_tests): Make sure the strings are zero terminated.
4882         * string/test-strspn.c (stupid_strspn): New function.
4883         (simple_strspn): Rename rej argument to acc.
4884         (do_random_tests): Make sure the string is zero terminated.
4885         * string/test-strcspn.c (stupid_strcspn): New function.
4886         * string/test-strncpy.c (stupid_strncpy): New function.
4887         * string/test-stpncpy.c (stupid_stpncpy): New function.
4888         * string/test-strncmp.c (stupid_strncmp): New function.
4889         (do_random_tests): Make sure the strings are zero terminated.
4890         * string/test-string.h (impl_t): Change test into long.
4891         (IMPL): Add __attribute__((aligned (sizeof (void *)))).
4893 2002-11-08  Roland McGrath  <roland@redhat.com>
4895         * sysdeps/ia64/elf/configure.in: Add TLS check.
4896         From Ian Wienand <ianw@cse.unsw.edu.au>.
4897         * sysdeps/ia64/elf/configure: Regenerated.
4899 2002-11-07  Roland McGrath  <roland@redhat.com>
4901         * libio/fileops.c (_IO_new_file_overflow): Use INTUSE(_IO_do_write) in
4902         place of _IO_new_do_write.
4903         [_LIBC] (_IO_do_write): Define as macro for _IO_new_do_write and
4904         #undef before versioned_symbol use.
4906 2002-11-07  Richard Henderson  <rth@redhat.com>
4908         * configure.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove test.
4909         * configure: Regenerated.
4910         * config.h.in (ASM_ALPHA_NG_SYMBOL_PREFIX): Remove #undef.
4911         * sysdeps/alpha/dl-machine.h (TRAMPOLINE_TEMPLATE): Use !samegp.
4912         (RTLD_START): Likewise.  Access _dl_skip_args, _rtld_local, and
4913         _dl_fini via gp-relative relocations.
4914         * sysdeps/alpha/fpu/e_sqrt.c: Use !samegp.
4916         * elf/tls-macros.h: Add alpha versions.
4917         * sysdeps/alpha/dl-machine.h (elf_machine_rela): Handle TLS relocs.
4918         * sysdeps/unix/alpha/sysdep.S: Support USE___THREAD.
4919         * sysdeps/unix/alpha/sysdep.h: Likewise.  Add SYSCALL_ERROR_HANDLER.
4920         * sysdeps/unix/sysv/linux/alpha/brk.S: Use it.
4921         * sysdeps/unix/sysv/linux/alpha/clone.S: Likewise.
4922         * sysdeps/unix/sysv/linux/alpha/getitimer.S: Likewise.
4923         * sysdeps/unix/sysv/linux/alpha/getrusage.S: Likewise.
4924         * sysdeps/unix/sysv/linux/alpha/gettimeofday.S: Likewise.
4925         * sysdeps/unix/sysv/linux/alpha/ieee_get_fp_control.S: Likewise.
4926         * sysdeps/unix/sysv/linux/alpha/ieee_set_fp_control.S: Likewise.
4927         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Likewise.
4928         * sysdeps/unix/sysv/linux/alpha/select.S: Likewise.
4929         * sysdeps/unix/sysv/linux/alpha/setitimer.S: Likewise.
4930         * sysdeps/unix/sysv/linux/alpha/settimeofday.S: Likewise.
4931         * sysdeps/unix/sysv/linux/alpha/sigsuspend.S: Likewise.
4932         * sysdeps/unix/sysv/linux/alpha/syscall.S: Likewise.
4933         * sysdeps/unix/sysv/linux/alpha/utimes.S: Likewise.
4934         * sysdeps/unix/sysv/linux/alpha/wait4.S: Likewise.
4936         * sysdeps/unix/sysv/linux/alpha/sysdep.h: Re-include protect.
4937         Kill argument registers across the inline syscall.
4939         * sysdeps/unix/sysv/linux/alpha/clone.S: Add user_tid and tls args.
4941         * linuxthreads/sysdeps/alpha/tls.h: New file.
4942         * sysdeps/alpha/dl-tls.h: New file.
4944 2002-10-29  David Mosberger  <davidm@hpl.hp.com>
4946         * sysdeps/ia64/elf/initfini.c [HAVE_INITFINI_ARRAY]
4947         (gmon_initializer): New function.
4948         (.init prologue): If HAVE_INITFINI_ARRAY is true, don't call
4949         __gmon_start__ here.  Call it from gmon_initializer() instead.
4951 2002-03-12  H.J. Lu  <hjl@gnu.org>
4953         * elf/Makefile [$(have-initfini-array) = yes] (tests): Add tst-array1,
4954         tst-array2, and tst-array3.
4955         [$(have-initfini-array) = yes] (tests-static): Add tst-array3.
4956         [$(have-initfini-array) = yes] (modules-names): Add tst-array2dep.
4957         ($(objpfx)tst-array1.out): New target.
4958         ($(objpfx)tst-array2): Likewise.
4959         ($(objpfx)tst-array2.out): Likewise.
4960         ($(objpfx)tst-array3.out): Likewise.
4961         * elf/tst-array1.c: New file.
4962         * elf/tst-array1.exp: Likewise.
4963         * elf/tst-array2.c: Likewise.
4964         * elf/tst-array2dep.c: Likewise.
4965         * elf/tst-array2.exp: Likewise.
4966         * elf/tst-array3.c: Likewise.
4968 2002-10-28  David Mosberger  <davidm@hpl.hp.com>
4970         * elf/dl-fini.c (_dl_fini): Invoke fini_array in _reverse_ order.
4971         Don't add L->l_addr to array entry values.
4973 2002-11-07  Jakub Jelinek  <jakub@redhat.com>
4975         * string/test-string.h: New file.
4976         * string/test-strlen.c: New file.
4977         * string/test-string.h: New file.
4978         * string/test-strcmp.c: New file.
4979         * string/test-strchr.c: New file.
4980         * string/test-strrchr.c: New file.
4981         * string/test-strcpy.c: New file.
4982         * string/test-stpcpy.c: New file.
4983         * string/test-strncpy.c: New file.
4984         * string/test-stpncpy.c: New file.
4985         * string/test-strpbrk.c: New file.
4986         * string/test-strcspn.c: New file.
4987         * string/test-strspn.c: New file.
4988         * string/test-strcat.c: New file.
4989         * string/test-strncmp.c: New file.
4990         * string/test-memchr.c: New file.
4991         * string/test-memcmp.c: New file.
4992         * string/test-memset.c: New file.
4993         * string/test-memcpy.c: New file.
4994         * string/test-mempcpy.c: New file.
4995         * string/test-memmove.c: New file.
4996         * string/Makefile (strop-tests): New variable.
4997         (tests): Add strop-tests.
4998         (distribute): Add test-string.h.
5000 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
5002         * posix/regcomp.c: Use tabs instead of spaces.
5003         * posix/regexec.c: Likewise.
5004         * posix/regex_internal.h: Likewise.
5006         * posix/regcomp.c (re_compile_fastmap_iter): Use __wcrtomb not wctomb.
5008 2002-11-06  Jakub Jelinek  <jakub@redhat.com>
5010         * posix/regcomp.c (re_compile_pattern): Don't set regs_allocated
5011         here.
5012         (regcomp): Don't set can_be_null here.
5013         (re_comp): Clear whole re_comp_buf with the exception of fastmap.
5014         (re_compile_internal): Clear can_be_null, set regs_allocated.
5016         * posix/regcomp.c (re_set_fastmap): New function.
5017         (re_compile_fastmap_iter): Use it.  Remove redundant type ==
5018         COMPLEX_BRACKET check.
5019         * posix/regexec.c (re_search_internal): Optimize searching with
5020         fastmap.  Call re_string_reconstruct even if match_first is
5021         smaller than raw_mbs_idx.
5023 2002-11-06  Isamu Hasegawa  <isamu@yamato.ibm.com>
5025         * posix/regcomp (free_dfa_content): Use free_state.
5026         * posix/regex_internal.c (re_string_realloc_buffers): Don't edit
5027         pointers in case that realloc failed.
5028         (re_node_set_merge): Likewise.
5029         (register_state): Likewise.
5030         (create_newstate_common): Invoke memory release functions in case of
5031         error conditions.
5032         (create_ci_newstate): Likewise.
5033         (create_cd_newstate): Likewise.
5034         (free_state): New function.
5035         * posix/regexec.c (re_search_internal): Invoke memory release
5036         functions in case of error conditions.
5037         (sift_states_backward): Likewise.
5038         (merge_state_array): Likewise.
5039         (add_epsilon_src_nodes): Likewise.
5040         (sub_epsilon_src_nodes): Likewise.
5041         (search_subexp): Likewise.
5042         (sift_states_bkref): Likewise.
5043         (transit_state_sb): Likewise.
5044         (transit_state_mb): Likewise.
5045         (transit_state_bkref_loop): Likewise.
5046         (group_nodes_into_DFAstates): Likewise.
5047         (push_fail_stack): Don't edit pointers in case that realloc failed.
5048         (extend_buffers): Likewise.
5049         (match_ctx_add_entry): Likewise.
5051 2002-11-06  Roland McGrath  <roland@redhat.com>
5053         * sysdeps/unix/sysv/linux/mips/configure.in: File removed.
5054         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
5056         * configure.in: Add checks on as and ld for binutils 2.13 or later.
5057         * configure: Regenerated.
5059 2002-11-06  Ulrich Drepper  <drepper@redhat.com>
5061         * posix/regcomp.c (regcomp): __re_compile_fastmap can never fail.
5062         If re_compile_internal failed free fastmap buffer.
5063         (free_dfa_content): Broken out of regfree function.  Frees all dfa
5064         related data.
5065         (regfree): Add free_dfa_content.
5066         (re_compile_internal): If any of the called functions fails free
5067         all dfa related memory.
5069 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5071         * sysdeps/unix/sysv/linux/sys/sysctl.h: Add ugly hacks to prevent
5072         warnings from the kernel headers.
5074 2002-11-05  Roland McGrath  <roland@redhat.com>
5076         * sysdeps/unix/mips/sysdep.h [! __PIC__] (PSEUDO): Add nop after jump.
5077         From Johannes Stezenbach <js@convergence.de>.
5079         * sysdeps/unix/sysv/linux/mips/Versions (libc: GLIBC_2.0): Change
5080         #errlist-compat magic comment to give 123 as size.
5081         (libc: GLIBC_2.1): Remove this set, moving #errlist-compat magic to ...
5082         (libc: GLIBC_2.2): ... here.
5083         (libc: GLIBC_2.3): Likewise.
5085 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5087         * elf/dl-fini.c (_dl_fini): Correct the increment of l_opencount
5088         which happens at the beginning so that we can unload modules in
5089         __libc_freeres.
5091 2002-11-06  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
5093         * sysdeps/sh/bits/setjmp.h (JB_SIZE): Define only
5094         under [__USE_MISC || _ASM].
5096         * elf/elf.h: Remove the obsolete SH TLS relocations.
5098 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5100         * posix/regcomp.c (regcomp): Initialize preg->can_be_null to zero.
5102 2002-11-05  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5104         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h: Handle
5105         __NR_pread64 and __NR_pwrite64.
5106         * sysdeps/unix/sysv/linux/powerpc/powerpc64/sysdep.h: Likewise.
5107         * sysdeps/unix/sysv/linux/powerpc/pread.c: Remove __NR_pread64
5108         and __NR_pwrite64.
5109         Revert change to use INLINE_SYSCALL.
5110         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
5111         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
5112         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
5113         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Revert change to use
5114         INLINE_SYSCALL.
5115         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
5117         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
5118         Update clobber list and add a comment about the syscall ABI.
5120         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_pread64,
5121         s_pwrite64, s_ftruncate, s_truncate): Re-add.
5123 2002-11-05  Jakub Jelinek  <jakub@redhat.com>
5125         * iconv/gconv_dl.c (free_mem): Clear loaded.
5126         * locale/loadarchive.c (_nl_archive_subfreeres): Call locale_data's
5127         cleanup if any.
5129 2002-11-05  Ulrich Drepper  <drepper@redhat.com>
5131         * sysdeps/unix/sysv/linux/fexecve.c: Include <stdio.h>.
5133         * libio/ioseekoff.c: Remove INTDEF.  Define _IO_seekoff_unlocked.  Same
5134         as old code without locking.  _IO_seekoff calls this function after
5135         locking the stream.
5136         * libio/ioseekpos.c: Likewise for _IO_seekpos.
5137         * libio/libioP.h: Replace _IO_seekoff_internal and _IO_seekpos_internal
5138         prototypes with _IO_seekoff_unlocked and _IO_seekpos_unlocked
5139         prototypes.
5140         * libio/iolibio.h (_IO_fseek): Call _IO_seekoff_unlocked instead
5141         of _IO_seekoff_internal.
5142         (_IO_rewind): Likewise.
5143         * libio/ioftell.c: Likewise.
5144         * libio/ftello.c: Likewise.
5145         * libio/ftello64.c: Likewise.
5146         * libio/iofgetpos.c: Likewise.
5147         * libio/iofgetpos64.c: Likewise.
5148         * libio/oldiofgetpos.c: Likewise.
5149         * libio/oldiofgetpos64.c: Likewise.
5150         * libio/iofsetpos.c: Call _IO_seekpos_unlocked instead of
5151         _IO_seekpos_internal.
5152         * libio/iofsetpos64.c: Likewise.
5153         * libio/oldiofsetpos.c: Likewise.
5154         * libio/oldiofsetpos64.c: Likewise.
5156 2002-11-04  Roland McGrath  <roland@redhat.com>
5158         * sysdeps/unix/sysv/linux/powerpc/chown.c: Use INLINE_SYSCALL macro.
5159         * sysdeps/unix/sysv/linux/powerpc/ftruncate64.c: Likewise.
5160         * sysdeps/unix/sysv/linux/powerpc/ioctl.c: Likewise.
5161         * sysdeps/unix/sysv/linux/powerpc/pread.c: Likewise.
5162         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
5163         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Likewise.
5164         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
5165         * sysdeps/unix/sysv/linux/powerpc/tcgetattr.c: Likewise.
5166         * sysdeps/unix/sysv/linux/powerpc/tcsetattr.c: Likewise.
5167         * sysdeps/unix/sysv/linux/powerpc/truncate64.c: Likewise.
5168         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ioctl,
5169         s_chown, s_ftruncate64, s_mmap2, s_pread64, s_pwrite64, s_truncate64,
5170         sys_fstat, sys_lstat, sys_mknod, sys_readv, sys_stat, sys_writev):
5171         Remove these, no longer used.
5173 2002-11-04  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
5175         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list (s_ipc,
5176         s_llseek, s_readahead, s_execve, s_fcntl, s_fcntl64, s_fstat64,
5177         s_getcwd, s_getdents, s_getdents64, s_getpmsg, s_getpriority,
5178         s_getrlimit, s_lstat64, s_poll, s_ptrace, s_putpmsg, s_reboot,
5179         s_setrlimit, s_sigaction, s_sigpending, s_sigprocmask, s_sigsuspend,
5180         s_stat64, s_sysctl, s_ugetrlimit, s_ustat, s_vfork): Remove now unused
5181         syscall stubs.
5183         * sysdeps/unix/sysv/linux/pwrite.c: Fix typo.
5184         * sysdeps/unix/sysv/linux/pwrite64.c: Likewise.
5185         * sysdeps/unix/sysv/linux/powerpc/pread.c: Handle both __NR_pread64
5186         and __NR_pread.
5187         * sysdeps/unix/sysv/linux/powerpc/pread64.c: Likewise.
5188         * sysdeps/unix/sysv/linux/powerpc/pwrite.c: Handle both __NR_pwrite64
5189         and __NR_pwrite.
5190         * sysdeps/unix/sysv/linux/powerpc/pwrite64.c: Likewise.
5192 2002-11-03  Roland McGrath  <roland@redhat.com>
5194         * sysdeps/generic/ldsodefs.h (struct rtld_global): New member
5195         `_dl_tls_static_used'.
5196         * sysdeps/generic/libc-tls.c (_dl_tls_static_used): New variable.
5197         (__libc_setup_tls): Initialize it.  Let the initial value of
5198         _dl_tls_static_size indicate some surplus space in the computed value.
5199         * elf/dl-open.c (_dl_tls_static_size): New variable.
5200         * sysdeps/generic/dl-tls.c (_dl_determine_tlsoffset): Initialize
5201         _dl_tls_static_used.  Add some surplus space into _dl_tls_static_size.
5202         * elf/dl-reloc.c [USE_TLS] (allocate_static_tls): New function.
5203         (CHECK_STATIC_TLS): Use it.
5204         * elf/dl-close.c (_dl_close): Adjust _dl_tls_static_used when the
5205         closed objects occupied a trailing contiguous chunk of static TLS area.
5207 2002-10-18  Bruno Haible  <bruno@clisp.org>
5209         * charmaps/ISO_5428: Use Greek characters introduced in Unicode 3.0.
5211 2002-11-04  Ulrich Drepper  <drepper@redhat.com>
5213         * libio/wfileops.c (_IO_wfile_seekoff): Don't modify _offset and
5214         _wide_data->_IO_read_end if adjustment can be made in the current
5215         buffer.
5217         * sysdeps/unix/sysv/linux/fexecve.c: New file.
5219         * libio/bug-wfflush.c (do_test): Using fseek is not allowed when
5220         wide oriented streams are used.
5222         * nss/getXXent_r.c (ENDFUNC_NAME): Don't do anything if the
5223         service hasn't been used [PR libc/4744].
5225         * include/features.h: Use __STDC_VERSION__ not __STDC_VERSION.
5226         Reported by Miloslav Trmac <mitr@volny.cz> [PR libc/4766].
5228         * manual/examples/dir.c: Don't include <stddef.h>.
5229         * manual/examples/select.c: Include <errno.h> for TEMP_FAILURE_RETRY.
5230         Reported by Frédéric Delanoy <delanoy_f@yahoo.com>.
5232 2002-11-02  H.J. Lu  <hjl@gnu.org>
5234         * stdio-common/reg-printf.c: Include <stddef.h>.
5236 2002-11-03  Ulrich Drepper  <drepper@redhat.com>
5238         * sysdeps/generic/libc-tls.c: Define _dl_tls_static_used.
5240         * po/ca.po: Update from translation team.
5241         * po/es.po: Likewise.
5243         * sysdeps/generic/segfault.c (catch_segfault): If HAVE_PROC_SELF
5244         is defined write out memory map.
5245         * sysdeps/unix/sysv/linux/segfault.c: New file.
5247 2002-11-02  Roland McGrath  <roland@redhat.com>
5249         * sysdeps/unix/sysv/linux/getdents.c (__GETDENTS): Use union type for
5250         pointers that can alias.
5251         Reported by Daniel Jacobowitz <drow@mvista.com>.
5253         * sysdeps/unix/bsd/bsd4.4/freebsd/bits/typesizes.h: New file.
5255 2002-11-02  Roland McGrath  <roland@redhat.com>
5257         * manual/filesys.texi (Reading/Closing Directory): Rewrite readdir_r
5258         description to be clearer and to say that *RESULT is set to ENTRY.
5260 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
5262         * posix/regexec.c (build_trtable): Alloca or malloc dests_node and
5263         dests_ch arrays together.  Alloca or malloc dest_states,
5264         dest_states_word and dest_states_nl arrays together.  Free memory on
5265         error exit.
5267 2002-10-29  Daniel Jacobowitz  <drow@mvista.com>
5269         * crypt/crypt_util.c (__init_des_r): Initialize current_salt
5270         and current_saltbits.
5272 2002-11-02  Roland McGrath  <roland@redhat.com>
5274         * stdio-common/reg-printf.c: Include <stdlib.h>.
5276 2002-11-02  H.J. Lu  <hjl@gnu.org>
5278         * sysdeps/unix/sysv/linux/mips/syscalls.list (s_execve): Set
5279         caller to EXTRA instead of execve.
5281 2002-11-01  Roland McGrath  <roland@redhat.com>
5283         * sysdeps/generic/errno-loc.c [! USE___THREAD]: Use this conditional
5284         in place of [!(USE_TLS && HAVE___THREAD)].
5285         (__errno_location) [! USE___THREAD]: Define as strong, not weak.
5287 2002-10-31  Roger Sayle  <roger@eyesopen.com>
5289         * sysdeps/i386/soft-fp/sfp-machine.h (_FP_NANFRAC_Q, _FP_NANSIGN_Q):
5290         New macros.
5291         * sysdeps/x86_64/soft-fp/sfp-machine.h: Likewise.
5293         * soft-fp/soft-fp.h: Allow sfp-machine.h to define FP_RND_NEAREST
5294         without defining FP_ROUNDMODE.
5296 2002-10-29  Jakub Jelinek  <jakub@redhat.com>
5298         * sysdeps/gnu/siglist.c (PTR_SIZE_STR): Remove.
5299         (__old_sys_siglist, __old_sys_sigabbrev): Use strong_alias and
5300         declare_symbol.
5301         * sysdeps/mach/hurd/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
5302         (OLD_SIGLIST_SIZE): Define.
5303         * sysdeps/unix/sysv/linux/siglist.h (OLD_SIGLIST_SIZE_STR): Remove.
5304         (OLD_SIGLIST_SIZE): Define.
5305         * sysdeps/unix/sysv/linux/arm/siglist.c: Remove.
5307 2002-11-01  Jakub Jelinek  <jakub@redhat.com>
5309         * sysdeps/ia64/strncpy.S: Fix recovery code.
5311 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
5313         * include/libc-symbols.h (__libc_freeres_fn_section, libc_freeres_fn):
5314         New macros.
5315         * elf/dl-close.c (free_mem): Use libc_freeres_fn macro, remove
5316         text_set_element.
5317         * elf/dl-libc.c (free_mem): Likewise.
5318         * iconv/gconv_conf.c (free_mem): Likewise.
5319         * iconv/gconv_db.c (free_mem): Likewise.
5320         * iconv/gconv_dl.c (free_mem): Likewise.
5321         * iconv/gconv_cache.c (free_mem): Likewise.
5322         * intl/finddomain.c (free_mem): Likewise.
5323         * intl/dcigettext.c (free_mem): Likewise.
5324         * locale/setlocale.c (free_mem): Likewise.
5325         * misc/fstab.c (fstab_free): Likewise.
5326         * nss/nsswitch.c (free_mem): Likewise.
5327         * posix/regcomp.c (free_mem): Likewise.
5328         * resolv/gai_misc.c (free_res): Likewise.
5329         * stdlib/fmtmsg.c (free_mem): Likewise.
5330         * sunrpc/clnt_perr.c (free_mem): Likewise.
5331         * sysdeps/generic/setenv.c (free_mem): Likewise.
5332         * sysdeps/unix/sysv/linux/shm_open.c (freeit): Likewise.
5333         * sysdeps/pthread/aio_misc.c (free_res): Likewise.
5334         * time/tzset.c (free_mem): Likewise.
5335         * malloc/mtrace.c (release_libc_mem): Add __libc_freeres_fn_section.
5336         * locale/loadarchive.c (_nl_archive_subfreeres): Likewise.
5337         * malloc/set-freeres.c (__libc_freeres): Likewise.
5339         * login/getutent.c: Include stdlib.h instead of stddef.h.
5340         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
5341         (__getutent): Allocate buffer the first time it is run.
5342         * login/getutid.c: Include stdlib.h instead of stddef.h.
5343         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
5344         (__getutid): Allocate buffer the first time it is run.
5345         * login/getutline.c: Include stdlib.h instead of stddef.h.
5346         (buffer): Change into pointer to utmp, add libc_freeres_ptr.
5347         (__getutline): Allocate buffer the first time it is run.
5348         * malloc/mtrace.c (malloc_trace_buffer): Change into char *.
5349         (mtrace): Allocate malloc_trace_buffer.
5350         * resolv/nsap_addr.c (inet_nsap_ntoa): Decrease size of tmpbuf.
5351         * resolv/ns_print.c (ns_sprintrrf): Decrease size of t.
5352         * string/strerror.c: Include libintl.h and errno.h.
5353         (buf): New variable.
5354         (strerror): Only allocate buffer if actually needed (unknown error).
5355         * time/tzfile.c (transitions): Add libc_freeres_ptr.
5356         (freeres): Remove.
5358 2002-10-25  Jakub Jelinek  <jakub@redhat.com>
5360         * include/libc-symbols.h (libc_freeres_ptr): New macro.
5361         * malloc/set-freeres.c (__libc_freeres_ptrs): Define using
5362         symbol_set_define.
5363         (__libc_freeres): Free all pointers in that section.
5364         * Makerules (build-shlib): Add $(LDSEDCMD-$(@F:lib%.so=%).so) to sed
5365         commands when creating .lds script.
5366         (LDSEDCMD-c.so): New variable.
5367         * inet/rcmd.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
5368         (rcmd_af): Use strdup to allocate ahostbuf.
5369         * inet/rexec.c (ahostbuf): Change into char *.  Add libc_freeres_ptr.
5370         (rexec_af): Use strdup to allocate ahostbuf.
5371         * stdio-common/reg-printf.c (printf_funcs): Remove.
5372         (__printf_arginfo_table): Change into printf_arginfo_function **.
5373         Add libc_freeres_ptr.
5374         (__register_printf_function): Allocate __printf_arginfo_table
5375         and __printf_function_table the first time it is called.
5376         * stdio-common/printf-parse.h (__printf_arginfo_table): Change into
5377         printf_arginfo_function **.
5378         (parse_one_spec): Add __builtin_expect.
5379         * grp/fgetgrent.c (buffer): Add libc_freeres_ptr.
5380         (free_mem): Remove.
5381         * inet/getnetgrent.c (buffer): Add libc_freeres_ptr.
5382         (free_mem): Remove.
5383         * intl/localealias.c (libc_freeres_ptr): Define if !_LIBC.
5384         (string_space, map): Add libc_freeres_ptr.
5385         (free_mem): Remove.
5386         * misc/efgcvt.c (FCVT_BUFPTR): Add libc_freeres_ptr.
5387         (free_mem): Remove.
5388         * misc/mntent.c (getmntent_buffer): Add libc_freeres_ptr.
5389         (free_mem): Remove.
5390         * crypt/md5-crypt.c (libc_freeres_ptr): Define if !_LIBC.
5391         (buffer): Add libc_freeres_ptr.
5392         (free_mem): Remove for _LIBC.
5393         * nss/getXXbyYY.c (buffer): Add libc_freeres_ptr.
5394         (free_mem): Remove.
5395         * nss/getXXent.c (buffer): Add libc_freeres_ptr.
5396         (free_mem): Remove.
5397         * pwd/fgetpwent.c (buffer): Add libc_freeres_ptr.
5398         (free_mem): Remove.
5399         * resolv/res_hconf.c (ifaddrs): Add libc_freeres_ptr.
5400         (free_mem): Remove.
5401         * shadow/fgetspent.c (buffer): Add libc_freeres_ptr.
5402         (free_mem): Remove.
5403         * sysdeps/posix/ttyname.c (getttyname_name): Add libc_freeres_ptr.
5404         (free_mem): Remove.
5405         * sysdeps/unix/sysv/linux/getsysstats.c (mount_proc): Add
5406         libc_freeres_ptr.
5407         (free_mem): Remove.
5408         * sysdeps/unix/sysv/linux/ttyname.c (getttyname_name, ttyname_buf): Add
5409         libc_freeres_ptr.
5410         (free_mem): Remove.
5412 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
5414         * malloc/obstack.c [_LIBC] (obstack_free): Change into strong_alias
5415         instead of duplicating the whole function in libc.
5417 2002-10-31  Roland McGrath  <roland@redhat.com>
5419         * sysdeps/i386/bits/byteswap.h [__GNUC__ < 2] (__bswap_32):
5420         Renamed from __bswap_16 (typo fix).  Reported by <dens@stl.sarov.ru>.
5422 2002-10-30  Jakub Jelinek  <jakub@redhat.com>
5424         * sysdeps/unix/sysv/linux/Makefile (syscall-%.h): Add -D for each
5425         32bit-predefine when creating .new32 list and -U for each
5426         32bit-predefine when creating .new64 list.
5427         * sysdeps/unix/sysv/linux/x86_64/Makefile (32bit-predefine): New.
5429 2002-10-29  Andreas Schwab  <schwab@suse.de>
5431         * sysdeps/generic/allocrtsig.c: Include <testrtsig.h>, not
5432         "testrtsig.h".  Reported by Daniel Jacobowitz <dan@debian.org>.
5434 2002-10-25  Roland McGrath  <roland@redhat.com>
5436         * sysdeps/unix/sysv/linux/configure.in: Fix typo in last change.
5437         * sysdeps/unix/sysv/linux/configure: Regenerated.
5439         * sysdeps/generic/ldsodefs.h: Remove [! SHARED] conditional from
5440         _dl_starting_up decl.
5442 2002-10-20  H.J. Lu  <hjl@gnu.org>
5444         * sysdeps/unix/sysv/linux/configure.in: Don't check
5445         /lib/modules/`uname -r`/build/include for kernel headers if
5446         cross compiling.
5447         * sysdeps/unix/sysv/linux/configure: Regenerated.
5449 2002-10-25  Roland McGrath  <roland@redhat.com>
5451         * math/math.h (M_LOG2El): Correct the value.
5452         From Stephen L Moshier <steve@moshier.net>.
5454         * sysdeps/unix/sysv/linux/init-first.c (init): Remove [! SHARED]
5455         conditional from __libc_multiple_libcs access.  Remove kludge for weak
5456         symbol access with old compilers we no longer support.
5457         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
5458         * sysdeps/generic/libc-start.c (__libc_start_main): Likewise.
5460 2002-10-25  Roland McGrath  <roland@redhat.com>
5462         * sysdeps/posix/sigvec.c [SA_RESETHAND]: Disable wrapper hacks and
5463         implement SV_RESETHAND by translating it to SA_RESETHAND.
5465 2002-10-23  Alexandre Oliva  <aoliva@redhat.com>
5467         * elf/dl-reloc.c (_dl_reloc_bad_use): Print the full 32-bit relocation
5468         type on ELF64 platforms.
5470 2002-10-24  Ulrich Drepper  <drepper@redhat.com>
5472         * elf/elf.h (R_X86_64_GOTTPOFF): Renamed from r_x86_64_GOTTPOFF.
5474         * elf/elf.h: Define ELF_NOTE_OS_FREEBSD and NT_TASKSTRUCT.
5476 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
5478         * elf/dl-misc.c: Include <sysdep.h>.
5479         (_dl_debug_vdprintf): Only take dl_load_lock if not _dl_starting_up.
5481         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.h (INTERNAL_SYSCALL,
5482         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
5483         (INLINE_SYSCALL): Use that.
5484         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (INTERNAL_SYSCALL,
5485         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
5486         (INLINE_SYSCALL): Use that.
5487         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL,
5488         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO): New macros.
5489         (INLINE_SYSCALL): Use that.
5490         * sysdeps/unix/sysv/linux/sparc/sparc32/sysdep.h: Include
5491         dl-sysdep.h.
5492         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
5493         (__INTERNAL_SYSCALL_STRING): Define.
5494         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h: Include
5495         dl-sysdep.h.
5496         (SYSCALL_ERROR_HANDLER): Define RTLD_PRIVATE_ERRNO variant.
5497         (__INTERNAL_SYSCALL_STRING): Define.
5498         * sysdeps/unix/sysv/linux/sparc/sysdep.h (INLINE_SYSCALL): Pass
5499         __SYSCALL_STRING to inline_syscall*.
5500         (INTERNAL_SYSCALL, INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO):
5501         New macros.
5502         (inline_syscall0, inline_syscall1, inline_syscall2, inline_syscall3,
5503         inline_syscall4, inline_syscall5, inline_syscall6): Add string
5504         argument.
5506 2002-10-24  Roland McGrath  <roland@redhat.com>
5508         * sysdeps/generic/ldsodefs.h (_dl_starting_up): Declare it here.
5509         * sysdeps/unix/sysv/linux/init-first.c: Not here.
5510         * sysdeps/powerpc/elf/libc-start.c: Or here.
5511         * sysdeps/unix/sysv/aix/libc-start.c: Or here.
5512         * sysdeps/unix/sysv/aix/start-libc.c: Or here.
5513         * sysdeps/unix/sysv/aix/init-first.c: Or here.
5514         * sysdeps/generic/libc-start.c: Or here.
5515         * sysdeps/unix/sysv/linux/init-first.c (init): Protect _dl_starting_up
5516         access with [! SHARED].
5517         * sysdeps/unix/sysv/aix/init-first.c (init): Likewise.
5519         * libio/bug-wfflush.c: New file.
5520         * libio/Makefile (tests): Add bug-wfflush.
5522 2002-10-23  Roland McGrath  <roland@redhat.com>
5524         * stdio-common/tst-fphex.c: New file.
5525         * stdio-common/Makefile (tests): Add tst-fphex.
5526         * sysdeps/generic/printf_fphex.c (__printf_fphex): Fix initialization
5527         of WNUMEND.  Fix counting of decimal point in WIDTH.  Print '0' pad
5528         chars always before the value digits.
5529         Reported by James Antill <james.antill@redhat.com>.
5531 2002-10-24  Jakub Jelinek  <jakub@redhat.com>
5533         * posix/regcomp.c (re_comp): Call __regfree on re_comp_buf.
5534         (free_mem): New function.
5535         * posix/Makefile (tests): Add bug-regex14.  Add bug-regex14-mem
5536         if not cross compiling.
5537         (generated): Add bug-regex14-mem and bug-regex14.mtrace.
5538         (bug-regex14-ENV): Set.
5539         (bug-regex14-mem): New target.
5540         * posix/bug-regex14.c: New file.
5542 2002-10-23  Roland McGrath  <roland@redhat.com>
5544         * elf/Makefile ($(objpfx)librtld.map): Use temporary file for output
5545         target, so we don't touch it when the link fails.
5547         * libio/ftello.c (ftello): Use _IO_off64_t for type of POS.
5548         Check for the result overflowing off_t and fail with EOVERFLOW.
5549         * libio/ioftell.c (_IO_ftell): Likewise.
5550         * libio/iofgetpos.c (_IO_new_fgetpos): Likewise.
5552         * login/logwtmp.c (logwtmp): If sizeof ut_tv != sizeof struct timeval,
5553         use a temporary timeval on the stack for gettimeofday and copy it.
5554         * login/logout.c (logout): Likewise.
5555         Reported by Steven Munroe <sjmunroe@us.ibm.com>.
5557         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs):
5558         Use __SWORD_TYPE instead of int for member types.
5559         (struct statfs64): Likewise.
5560         * sysdeps/unix/sysv/linux/alpha/bits/statfs.h: New file.
5561         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: New file.
5562         * sysdeps/unix/sysv/linux/ia64/bits/statfs.h: File removed.
5563         * sysdeps/unix/sysv/linux/sparc/bits/statfs.h: File removed.
5564         * sysdeps/unix/sysv/linux/x86_64/bits/statfs.h: File removed.
5566         * sysdeps/unix/sysv/linux/sparc/bits/statvfs.h: Moved to ...
5567         * sysdeps/unix/sysv/linux/bits/statvfs.h: ... here.
5568         (ST_NODIRATIME): Restore fixed value of 2048.
5569         * sysdeps/unix/sysv/linux/alpha/bits/statvfs.h: File removed.
5570         * sysdeps/unix/sysv/linux/ia64/bits/statvfs.h: File removed.
5572         Rearranged <bits/types.h> definitions to reduce duplication.
5573         * sysdeps/generic/bits/types.h: Rewritten, using macros from
5574         <bits/wordsize.h> and new header <bits/typesizes.h>.
5575         * posix/Makefile (headers): Add bits/typesizes.h here.
5576         * sysdeps/generic/bits/typesizes.h: New file.
5577         * sysdeps/unix/sysv/linux/alpha/bits/typesizes.h: New file.
5578         * sysdeps/unix/sysv/linux/sparc/bits/typesizes.h: New file.
5579         * sysdeps/mach/hurd/bits/typesizes.h: New file.
5580         * sysdeps/unix/sysv/linux/alpha/bits/types.h: File removed.
5581         * sysdeps/unix/sysv/linux/bits/types.h: File removed.
5582         * sysdeps/unix/sysv/linux/ia64/bits/types.h: File removed.
5583         * sysdeps/unix/sysv/linux/mips/bits/types.h: File removed.
5584         * sysdeps/unix/sysv/linux/s390/bits/types.h: File removed.
5585         * sysdeps/unix/sysv/linux/sparc/bits/types.h: File removed.
5586         * sysdeps/unix/sysv/linux/x86_64/bits/types.h: File removed.
5587         * posix/sys/types.h [__USE_POSIX199506 || __USE_UNIX98]: Include
5588         <bits/pthreadtypes.h> here, not in <bits/types.h>.
5589         * signal/signal.h: Likewise.
5591         * streams/stropts.h: Include <bits/xtitypes.h>.
5592         * streams/Makefile (headers): Add bits/xtitypes.h here.
5593         * sysdeps/generic/bits/xtitypes.h: New file.
5594         * sysdeps/s390/bits/xtitypes.h: New file.
5595         * sysdeps/ia64/bits/xtitypes.h: New file.
5596         * sysdeps/x86_64/bits/xtitypes.h: New file.
5598         * sysvipc/Makefile (headers): Add bits/ipctypes.h here.
5599         * sysdeps/generic/bits/ipctypes.h: New file.
5600         * sysdeps/mips/bits/ipctypes.h: New file.
5601         * sysdeps/gnu/bits/shm.h: Include <bits/ipctypes.h>.
5602         * sysdeps/gnu/bits/msq.h: Likewise.
5603         * sysvipc/sys/ipc.h: Likewise.
5605 2002-10-22  Ulrich Drepper  <drepper@redhat.com>
5607         * elf/dl-load.c (struct filebuf): For buf element to have the
5608         alignment of ElfXX_Ehdr since this is what will be stored in it.
5610 2002-10-22  Jakub Jelinek  <jakub@redhat.com>
5612         * locale/programs/locarchive.c (add_alias): Change locrec_offset arg
5613         into pointer to locrec_offset.
5614         (add_locale_to_archive): Adjust callers.  Free normalized_name right
5615         before returning, not immediately after add_locale, pass it to
5616         add_alias if not NULL instead of name.  Rename second normalized_name
5617         occurence to nnormalized_codeset_name.
5619         * locale/programs/locarchive.c (enlarge_archive): Make sure
5620         string_size is always a multiple of 4.
5621         Reported by Andreas Schwab <schwab@suse.de>.
5623 2002-10-21  Andreas Schwab  <schwab@suse.de>
5625         * sysdeps/unix/sysv/linux/ia64/syscalls.list (s_execve): Set
5626         caller to EXTRA instead of execve, since the latter has a
5627         higher-priority implementation in linuxthreads.
5629 2002-10-21  Roland McGrath  <roland@redhat.com>
5631         * sysdeps/generic/libc-tls.c (__libc_setup_tls): Initialize the static
5632         slotinfo list's len member to the proper size, not just 1.
5633         Initialize static_map.l_tls_initimage.
5635         * elf/dl-open.c (dl_open_worker): Fix loop searching for
5636         dtv_slotinfo_list element containing new modules' l_tls_modid.
5638         * elf/tst-tls9.c, elf/tst-tls9-static.c: New files.
5639         * elf/tst-tlsmod5.c, elf/tst-tlsmod6.c: New files.
5640         * elf/Makefile (tests): Add tst-tls9.
5641         (tests-static): Add tst-tls9-static.
5642         (tst-tls9-static-ENV): New variable.
5643         ($(objpfx)tst-tls9-static, $(objpfx)tst-tls9-static.out): New targets.
5645         * elf/dl-close.c (remove_slotinfo): Remove an assert; the number of
5646         modids used by partially loaded modules being closed can't be known.
5648 2002-10-21  Isamu Hasegawa  <isamu@yamato.ibm.com>
5650         * posix/Makefile: Add a test case for the bug reported by Aharon
5651         Robbins <arnold@skeeve.com>.
5652         * posix/bug-regex13.c: New file.
5653         * posix/regcomp.c (peek_token_bracket): Skip the byte already read.
5655 2002-10-21  Ulrich Drepper  <drepper@redhat.com>
5657         * csu/gmon-start.c: Pretty printing.
5659 2002-10-19  Art Haas  <ahaas@neosoft.com>
5661         * configure.in: Replace AC_CONFIG_HEADER with AC_CONFIG_HEADERS,
5662         add AC_HELP_STRING to all AC_ARG_WITH and AC_ARG_ENABLE macros,
5663         add autoconf quotes to the AC_CONFIG_AUX_DIR macro.
5664         * configure: Regenerated.
5666 2002-10-19  Roland McGrath  <roland@redhat.com>
5668         * configure.in: Call AC_CONFIG_SUBDIRS with empty argument
5669         and then set $subdirs directly, because the new Autoconf breaks
5670         compatibility in every way imaginable and insists on whining
5671         about usage that worked since the dawn of time.
5672         * configure: Regenerated.
5674         * configure: Regenerated (using Autoconf 2.54).
5675         * sysdeps/alpha/elf/configure: Likewise.
5676         * sysdeps/generic/configure: Likewise.
5677         * sysdeps/i386/elf/configure: Likewise.
5678         * sysdeps/ia64/elf/configure: Likewise.
5679         * sysdeps/mach/hurd/configure: Likewise.
5680         * sysdeps/mach/configure: Likewise.
5681         * sysdeps/unix/configure: Likewise.
5682         * sysdeps/unix/common/configure: Likewise.
5683         * sysdeps/unix/sysv/aix/configure: Likewise.
5684         * sysdeps/unix/sysv/linux/configure: Likewise.
5685         * sysdeps/unix/sysv/linux/mips/configure: Likewise.
5686         * sysdeps/x86_64/elf/configure: Likewise.
5688         * config.make.in: Nix completely-soft nonsense.
5689         * configure.in: Likewise.  Under --without-fp, use nofpu subdirectory
5690         of machine directories instead of fpu subdirectory.
5691         * sysdeps/powerpc/soft-fp/Makefile: Remove cruft added in last change.
5692         * sysdeps/powerpc/nofpu/Makefile: Put it in this new file instead.
5693         * sysdeps/powerpc/soft-fp/sim-full.c: Moved to ...
5694         * sysdeps/powerpc/nofpu/sim-full.c: ... here.
5695         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: Moved to ...
5696         * sysdeps/powerpc/nofpu/fraiseexcpt.c: ... here.
5697         * sysdeps/powerpc/soft-fp/fegetexcept.c: Moved to ...
5698         * sysdeps/powerpc/nofpu/fegetexcept.c: ... here.
5699         * sysdeps/powerpc/soft-fp/fclrexcpt.c: Moved to ...
5700         * sysdeps/powerpc/nofpu/fclrexcpt.c: ... here.
5701         * sysdeps/powerpc/soft-fp/ftestexcept.c: Moved to ...
5702         * sysdeps/powerpc/nofpu/ftestexcept.c: ... here.
5703         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: Moved to ...
5704         * sysdeps/powerpc/nofpu/fgetexcptflg.c: ... here.
5705         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: Moved to ...
5706         * sysdeps/powerpc/nofpu/fsetexcptflg.c: ... here.
5707         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: Moved to ...
5708         * sysdeps/powerpc/nofpu/fedisblxcpt.c: ... here.
5709         * sysdeps/powerpc/soft-fp/feenablxcpt.c: Moved to ...
5710         * sysdeps/powerpc/nofpu/feenablxcpt.c: ... here.
5711         * sysdeps/powerpc/soft-fp/fegetenv.c: Moved to ...
5712         * sysdeps/powerpc/nofpu/fegetenv.c: ... here.
5713         * sysdeps/powerpc/soft-fp/fesetenv.c: Moved to ...
5714         * sysdeps/powerpc/nofpu/fesetenv.c: ... here.
5715         * sysdeps/powerpc/soft-fp/fegetround.c: Moved to ...
5716         * sysdeps/powerpc/nofpu/fegetround.c: ... here.
5717         * sysdeps/powerpc/soft-fp/fesetround.c: Moved to ...
5718         * sysdeps/powerpc/nofpu/fesetround.c: ... here.
5719         * sysdeps/powerpc/soft-fp/feupdateenv.c: Moved to ...
5720         * sysdeps/powerpc/nofpu/feupdateenv.c: ... here.
5721         * sysdeps/powerpc/soft-fp/feholdexcpt.c: Moved to ...
5722         * sysdeps/powerpc/nofpu/feholdexcpt.c: ... here.
5723         * sysdeps/powerpc/soft-fp/fenv_const.c: Moved to ...
5724         * sysdeps/powerpc/nofpu/fenv_const.c: ... here.
5725         * sysdeps/powerpc/soft-fp/libm-test-ulps: Moved to ...
5726         * sysdeps/powerpc/nofpu/libm-test-ulps: ... here.
5727         * sysdeps/powerpc/soft-fp/soft-supp.h: Moved to ...
5728         * sysdeps/powerpc/nofpu/soft-supp.h: ... here.
5729         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Moved to ...
5730         * sysdeps/powerpc/nofpu/Versions: ... here, new file.
5732 2002-10-19  Bruno Haible  <bruno@clisp.org>
5734         * sysdeps/unix/bsd/bsd4.4/freebsd/sys/sysmacros.h: New file.
5736 2002-10-18  Roland McGrath  <roland@redhat.com>
5738         * io/Makefile (routines): Add lchmod.
5739         * io/sys/stat.h [__USE_BSD] (lchmod): Declare it.
5740         * sysdeps/generic/lchmod.c: New file.
5741         * sysdeps/mach/hurd/lchmod.c: New file.
5742         * io/Versions (libc: GLIBC_2.3.2): New set, add lchmod.
5744 2002-10-18  Art Haas  <ahaas@neosoft.com>
5746         * configure.in: Remove remaining AC_FD_CC macros, and replace
5747         AC_FD_MSG with AS_MESSAGE_FD.
5749 2002-10-18  Roland McGrath  <roland@redhat.com>
5751         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela): Fix
5752         typos: VALUE -> FINALADDR.
5754         * sysdeps/unix/alpha/sysdep.h (INLINE_SYSCALL, INLINE_SYSCALL1)
5755         (inline_syscall_clobbers, inline_syscall0, inline_syscall1)
5756         (inline_syscall2, inline_syscall3, inline_syscall4, inline_syscall5)
5757         (inline_syscall6): Move these macros ...
5758         * sysdeps/unix/sysv/linux/alpha/sysdep.h: ... to here.
5760         * configure.in (libc_link_dests, libc_link_sources): Remove these
5761         variables and the AC_LINK_FILES call.
5763         * sysdeps/powerpc/soft-fp/Versions (libc: GLIBC_2.3.2): Fix last
5764         change to put new symbols here instead of in GLIBC_2.2.
5765         * sysdeps/powerpc/Subdirs: Move this file ...
5766         * sysdeps/powerpc/soft-fp/Subdirs: ... here.
5768 2002-10-07  Roland McGrath  <roland@redhat.com>
5770         * sysdeps/generic/bits/time.h: Replaced with contents of the
5771         sysdeps/unix/sysv/linux/i386/bits/time.h file.  All the following
5772         files were identical except for the absence of CLOCK_THREAD_CPUTIME_ID
5773         and CLOCK_PROCESS_CPUTIME_ID in .../linux/bits/time.h; adding these
5774         macros is ok even for architectures that don't now implement them.
5775         * sysdeps/mach/hurd/bits/time.h: File removed.
5776         * sysdeps/unix/sysv/linux/bits/time.h: File removed.
5777         * sysdeps/unix/sysv/linux/i386/bits/time.h: File removed.
5778         * sysdeps/unix/sysv/linux/ia64/bits/time.h: File removed.
5779         * sysdeps/unix/sysv/linux/sparc/bits/time.h: File removed.
5780         * sysdeps/unix/sysv/linux/x86_64/bits/time.h: File removed.
5782 2002-10-18  Jeff Bailey  <jbailey@gnu.org>
5784         * configure.in: Replace obsolete AC_OUTPUT syntax with
5785         AC_CONFIG_FILES, AC_CONFIG_COMMANDS, and new-type AC_OUTPUT trio.
5787         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDEs for
5788         _AS_PATH_SEPARATOR_PREPARE and _AS_TEST_PREPARE.
5790         * configure.in: Replace AC_FD_CC with AS_MESSAGE_LOG_FD.
5791         * sysdeps/alpha/elf/configure.in: Likewise.
5792         * sysdeps/i386/elf/configure.in: Likewise.
5793         * sysdeps/mach/hurd/configure.in: Likewise.
5794         * sysdeps/x86_64/elf/configure.in: Likewise.
5796         * configure.in: Use AC_CONFIG_SRCDIR and new AC_INIT syntax.
5798         * sysdeps/alpha/elf/configure.in: Remove unneeded sinclude statement.
5799         * sysdeps/generic/configure.in: Likewise.
5800         * sysdeps/i386/elf/configure.in: Likewise.
5801         * sysdeps/ia64/elf/configure.in: Likewise.
5802         * sysdeps/mach/configure.in: Likewise.
5803         * sysdeps/mach/hurd/configure.in: Likewise.
5804         * sysdeps/unix/configure.in: Likewise.
5805         * sysdeps/unix/common/configure.in: Likewise.
5806         * sysdeps/unix/sysv/aix/configure.in: Likewise.
5807         * sysdeps/unix/sysv/linux/configure.in: Likewise.
5808         * sysdeps/unix/sysv/linux/mips/configure.in: Likewise.
5809         * sysdeps/x86_64/elf/configure.in: Likewise.
5811         * aclocal.m4: Use just the bits from AS_INIT that are needed for the
5812         GLIBC_PROVIDES.  Use plain comment instead of HEADER-COMMENT so
5813         that it's obvious when extra autoconf machinery is being dragged in.
5815 2002-10-18  Roland McGrath  <roland@redhat.com>
5817         * configure.in: Remove bogus echo included in
5818         2002-10-08  Aldy Hernandez  <aldyh@redhat.com> change.
5819         * configure: Regenerated.
5821 2002-10-18  Jakub Jelinek  <jakub@redhat.com>
5823         * sysdeps/unix/sysv/linux/pathconf.h (statfs_link_max): Add inline.
5824         (statfs_filesize_max): New function.
5825         * sysdeps/unix/sysv/linux/linux_fsinfo.h (JFFS_SUPER_MAGIC,
5826         JFFS2_SUPER_MAGIC, JFS_SUPER_MAGIC, NTFS_SUPER_MAGIC,
5827         ROMFS_SUPER_MAGIC, UDF_SUPER_MAGIC): Define.
5828         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use
5829         statfs_filesize_max.
5830         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
5831         * sysdeps/unix/sysv/linux/alpha/fpathconf.c: Removed.
5832         * sysdeps/unix/sysv/linux/alpha/pathconf.c: Removed.
5834 2002-10-17  Roland McGrath  <roland@redhat.com>
5836         * configure.in (MIG): Just AC_SUBST it here.
5837         * configure: Regenerated.
5838         * sysdeps/mach/configure.in (MIG): Do the AC_CHECK_TOOL here.
5839         Adding final - argument to all AC_CHECK_HEADER uses for .defs files.
5840         * sysdeps/mach/configure: Regenerated.
5842         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_TR_SH_PREPARE])
5843         and AC_PROVIDE([_AS_CR_PREPARE]).
5845         * aclocal.m4 (GLIBC_PROVIDES): Add AC_PROVIDE([_AS_ECHO_N_PREPARE]).
5846         Remove AC_LANG(C) call, instead just define([_AC_LANG], [C]).
5848         * elf/dl-support.c: Move _dl_tls_* variables to ...
5849         * sysdeps/generic/libc-tls.c: ... here.
5851         * elf/dl-close.c (remove_slotinfo): Take new argument.  If false,
5852         allow IDX to be one past the current last slotinfo entry.
5853         (_dl_close): Pass IMAP->l_init_called for that parameter.
5855 2002-10-07  Andreas Schwab  <schwab@suse.de>
5857         * aclocal.m4: Fix for autoconf 2.53.
5858         * configure.in: Likewise.  Require autoconf 2.53.
5860 2002-10-08  Richard Henderson  <rth@redhat.com>
5862         * soft-fp/op-4.h: Handle carry correctly in
5863         __FP_FRAC_ADD_3, __FP_FRAC_ADD_4, __FP_FRAC_SUB_3,
5864         __FP_FRAC_SUB_4, __FP_FRAC_DEC_3, __FP_FRAC_DEC_4.
5865         * soft-fp/op-common.h: New macros _FP_DIV_MEAT_N_loop.
5867 2002-10-08  Aldy Hernandez  <aldyh@redhat.com>
5869         * configure.in: Compute completely-soft.
5870         * config.make.in: Make completely-soft available to sub-makes.
5871         * sysdeps/powerpc/soft-fp/Makefile: Add gcc-single-routines and
5872         gcc-double-routines.  Add sim-full.c.  Add fenv_const and
5873         fe_nomask to libm-support.
5874         * sysdeps/powerpc/soft-fp/sim-full.c: New file.
5875         * sysdeps/powerpc/soft-fp/fraiseexcpt.c: New file.
5876         * sysdeps/powerpc/soft-fp/fegetexcept.c: New file.
5877         * sysdeps/powerpc/soft-fp/fclrexcpt.c: New file.
5878         * sysdeps/powerpc/soft-fp/ftestexcept.c: New file.
5879         * sysdeps/powerpc/soft-fp/fgetexcptflg.c: New file.
5880         * sysdeps/powerpc/soft-fp/fsetexcptflg.c: New file.
5881         * sysdeps/powerpc/soft-fp/fedisblxcpt.c: New file.
5882         * sysdeps/powerpc/soft-fp/feenablxcpt.c: New file.
5883         * sysdeps/powerpc/soft-fp/fegetenv.c: New file.
5884         * sysdeps/powerpc/soft-fp/fesetenv.c: New file.
5885         * sysdeps/powerpc/soft-fp/fegetround.c: New file.
5886         * sysdeps/powerpc/soft-fp/fesetround.c: New file.
5887         * sysdeps/powerpc/soft-fp/feupdateenv.c: New file.
5888         * sysdeps/powerpc/soft-fp/feholdexcpt.c: New file.
5889         * sysdeps/powerpc/soft-fp/fenv_const.c: New file.
5890         * sysdeps/powerpc/soft-fp/libm-test-ulps: New file.
5891         * sysdeps/powerpc/soft-fp/soft-supp.h: New file.
5892         * sysdeps/powerpc/soft-fp/Versions: Add libgcc soft-float
5893         symbols.  Add __sim_disabled_exceptions, __sim_exceptions,
5894         __sim_round_mode.
5895         * sysdeps/powerpc/soft-float/Dist: Add sim-full.c, fenv_const.c.
5896         * sysdeps/powerpc/soft-float/sfp-machine.h: Define
5897         FP_HANDLE_EXCEPTIONS.
5898         Define FP_ROUNDMODE.
5899         Redefine FP_* macros to correspond to the FE_* bit positions.
5900         Define FP_DIV_MEAT_S to _FP_DIV_MEAT_1_loop.
5901         Define externs for __sim_exceptions, __sim_disabled_exceptions,
5902         __sim_round_mode, __simulate_exceptions.
5903         * sysdeps/powerpc/fpu/bits/fenv.h: Move file from here...
5904         * sysdeps/powerpc/bits/fenv.h: ...to here.
5906 2002-10-06  Jakub Jelinek  <jakub@redhat.com>
5908         * sysdeps/powerpc/powerpc32/dl-machine.c (__process_machine_rela):
5909         Store R_PPC_UADDR32 and R_PPC_UADDR16 one byte at a time.
5910         Use __builtin_expect for R_PPC_ADDR24 overflow check.  Fix
5911         R_PPC_ADDR16, R_PPC_UADDR16 and R_PPC_ADDR14* overflow check, use
5912         __builtin_expect.
5914 2002-10-15  Jakub Jelinek  <jakub@redhat.com>
5916         * include/resolv.h (__libc_res_nquery, __libc_res_nsearch,
5917         __libc_res_nsend): New prototypes.
5918         * resolv/res_query.c (QUERYSIZE): Define.
5919         (__libc_res_nquery): Renamed from res_nquery.  Added answerp
5920         argument.  Allocate only QUERYSIZE bytes first, if res_nmkquery
5921         fails use MAXPACKET buffer.  Call __libc_res_nsend instead of
5922         res_nsend, pass answerp.
5923         (res_nquery): Changed into wrapper around __libc_res_nquery.
5924         (__libc_res_nsearch): Renamed from res_nsearch.  Added answerp
5925         argument.  Call __libc_res_nquerydomain and __libc_res_nquery
5926         instead of the non-__libc_ variants, pass them answerp.
5927         (res_nsearch): Changed into wrapper around __libc_res_nsearch.
5928         (__libc_res_nquerydomain): Renamed from res_nquerydomain.
5929         Added answerp argument.  Call __libc_res_nquery instead of
5930         res_nquery, pass answerp.
5931         (res_nquerydomain): Changed into wrapper around
5932         __libc_res_nquerydomain.
5933         * resolv/res_send.c: Include sys/ioctl.h.
5934         (MAXPACKET): Define.
5935         (send_vc): Change arguments.  Reallocate answer buffer if it is
5936         too small.
5937         (send_dg): Likewise.
5938         (__libc_res_nsend): Renamed from res_nsend.  Added ansp argument.
5939         Reallocate answer buffer if it is too small and hooks are in use.
5940         Adjust calls to send_vc and send_dg.
5941         (res_nsend): Changed into wrapper around __libc_res_nsend.
5942         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r): Allocate
5943         just 1K answer buffer on the stack, use __libc_res_nsearch instead
5944         of res_nsearch.
5945         (_nss_dns_gethostbyaddr_r): Similarly with __libc_res_nquery.
5946         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyaddr_r): Likewise.
5947         (_nss_dns_getnetbyname_r): Similarly with __libc_res_nsearch.
5948         * resolv/gethnamaddr.c (gethostbyname2): Likewise.
5949         (gethostbyaddr): Similarly with __libc_res_nquery.
5950         * resolv/Versions (libresolv): Export __libc_res_nquery and
5951         __libc_res_nsearch at GLIBC_PRIVATE.
5953 2002-10-17  Roland McGrath  <roland@redhat.com>
5955         * configure.in: Grok --without-__thread and disable HAVE___THREAD.
5956         * configure: Regenerated.
5958         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Do CHECK_STATIC_TLS
5959         before performing the reloc, not after.
5960         * sysdeps/i386/dl-machine.h (elf_machine_rel): Likewise.
5962 2002-10-17  Ulrich Drepper  <drepper@redhat.com>
5964         * locale/programs/locale.c (write_locales): Use 'm' flag in fopen call.
5965         * locale/programs/linereader.c (lr_open): Likewise.
5966         * locale/programs/charmap-dir.c (charmap_open): Likewise.
5967         * locale/programs/locarchive.c (add_locale_to_archive): Likewise.
5969 2002-10-17  Isamu Hasegawa  <isamu@yamato.ibm.com>
5971         * posix/bug-regex11.c: Add a test case for the bug reported by
5972         Paolo Bonzini <bonzini@gnu.org>.
5973         * posix/regexec.c (sift_states_bkref): Use correct destination of
5974         the back reference.
5976 2002-10-17  Roland McGrath  <roland@redhat.com>
5978         * elf/dl-load.c (_dl_map_object_from_fd): Don't check DF_STATIC_TLS.
5979         * elf/dl-reloc.c (_dl_relocate_object: CHECK_STATIC_TLS): New macro
5980         to signal error if an IE-model TLS reloc resolved to a dlopen'd module.
5981         * sysdeps/i386/dl-machine.h (elf_machine_rel, elf_machine_rela):
5982         Call it after performing TPOFF relocs.
5983         * sysdeps/x86_64/dl-machine.h (elf_machine_rela): Likewise.
5984         * sysdeps/sh/dl-machine.h (elf_machine_rela): Likewise.
5985         * elf/dl-conflict.c (CHECK_STATIC_TLS): New macro (no-op).
5987         * elf/dl-close.c (remove_slotinfo): Change asserts so as not to crash
5988         when closing a partially-initialized object.
5990         * elf/dl-load.c (_dl_map_object_from_fd) [! USE_TLS]: Call lose
5991         instead of _dl_fatal_printf when we see PT_TLS.
5993         * Makeconfig (CPPFLAGS): Fix last change to use $(libof-$(<F))
5994         instead of $(libof-$<).
5996 2002-10-16  Roland McGrath  <roland@redhat.com>
5998         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Variable removed.
5999         instead of += to append, to be sure $(lib) gets expanded at defn time.
6000         (libof-$(cpp-src)): New variable, define this instead.
6001         * extra-lib.mk (cpp-srcs-left): Reduce duplication in include setup.
6002         (lib): Don't use override.
6003         (CPPFLAGS-$(lib)): New variable, put -D's here.
6004         * Makeconfig (CPPFLAGS): Use basename fn for CPPFLAGS-basename.
6005         Also add $(CPPFLAGS-LIB) before the file-specific flags, for each
6006         LIB found by $(libof-*) for basename, target, or source.
6007         * Makerules (CPPFLAGS-nonlib): New variable.
6008         * nscd/Makefile (lib): Set to nonlib when using cppflags-iterator.mk.
6009         * locale/Makefile (lib): Likewise.
6010         * sunrpc/Makefile (lib): Likewise.
6012         * sysdeps/unix/sysv/linux/fpathconf.c (LINUX_LINK_MAX): Move macro ...
6013         * sysdeps/unix/sysv/linux/linux_fsinfo.h (LINUX_LINK_MAX): ... here.
6014         * sysdeps/unix/sysv/linux/pathconf.h: New file.
6015         (statfs_link_max): New function, guts from fpathconf.c.
6016         * sysdeps/unix/sysv/linux/fpathconf.c: Rewritten using that.
6017         * sysdeps/unix/sysv/linux/pathconf.c (__pathconf): Likewise.
6018         * sysdeps/unix/sysv/linux/alpha/pathconf.c (__pathconf): Rewritten
6019         to use the linux/pathconf.c code by #include rather than duplication.
6020         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__pathconf): Likewise.
6022 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
6024         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6025         Use __libc_errno only for libc itself.
6027 2002-10-16  Andreas Jaeger  <aj@suse.de>
6029         * sysdeps/x86_64/_mcount.S: Fix off-by-1 error in argument access.
6031 2002-10-16  Ulrich Drepper  <drepper@redhat.com>
6033         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER):
6034         Use __libc_errno only for libc itself.
6036 2002-10-15  Roland McGrath  <roland@redhat.com>
6037             Jakub Jelinek  <jakub@redhat.com>
6039         * sysdeps/unix/sysv/linux/Makefile
6040         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d): Take code from
6041         sparc/Makefile to produce a bi-arch file as needed.
6042         That's now parameterized by the variable $(64bit-predefine).
6043         Use LC_ALL=C for `comm' commands in that rule.
6044         No longer conditional on [$(no_syscall_list_h)].
6045         * sysdeps/unix/sysv/linux/sparc/Makefile: Remove replacement rules.
6046         (64bit-predefine): New variable.
6047         * sysdeps/unix/sysv/linux/x86_64/Makefile: Likewise.
6048         * sysdeps/unix/sysv/linux/s390/Makefile: New file.
6049         * sysdeps/unix/sysv/linux/powerpc/Makefile
6050         (64bit-predefine): New variable.
6052 2002-10-15  Roland McGrath  <roland@redhat.com>
6054         * sysdeps/unix/sysv/linux/Makefile
6055         ($(objpfx)syscall-%.h $(objpfx)syscall-%.d)
6057         * login/utmp-private.h: Declare __libc_utmp_lock.
6058         * sysdeps/unix/getlogin_r.c (getlogin_r): Take __libc_utmp_lock once
6059         and call __libc_utmp_jump_table functions directly, instead of using
6060         __setutent et al.
6062         * sysdeps/unix/sysv/linux/configure.in: Use case instead of if.
6063         * sysdeps/unix/sysv/linux/configure: Regenerated.
6065         * sysdeps/gnu/bits/utmp.h: Include <bits/wordsize.h>.
6066         (struct lastlog) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
6067         Use int32_t for ll_time.
6068         (struct utmp) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]:
6069         Use int32_t instead of long int for ut_session.
6070         Use an anonymous struct with 32-bit fields for ut_tv.
6071         * sysdeps/gnu/bits/utmpx.h: Include <bits/wordsize.h>.
6072         (struct utmpx) [__WORDSIZE == 64 && __WORDSIZE_COMPAT32]: Do the same
6073         here as in utmp.h for `struct utmp'.
6074         * sysdeps/unix/sysv/linux/powerpc/bits/utmp.h: File removed.
6075         * sysdeps/unix/sysv/linux/powerpc/bits/utmpx.h: File removed.
6076         * sysdeps/unix/sysv/linux/sparc/bits/utmp.h: File removed.
6077         * sysdeps/unix/sysv/linux/sparc/bits/utmpx.h: File removed.
6078         * sysdeps/unix/sysv/linux/x86_64/bits/utmp.h: File removed.
6079         * sysdeps/unix/sysv/linux/x86_64/bits/utmpx.h: File removed.
6081         * sysdeps/unix/sysv/linux/bits/resource.h: Replaced with the contents
6082         of the sysdeps/unix/sysv/linux/i386/bits/resource.h file.
6083         All the following files were identical or equivalent to it.
6084         * sysdeps/unix/sysv/linux/i386/bits/resource.h: File removed.
6085         * sysdeps/unix/sysv/linux/arm/bits/resource.h: File removed.
6086         * sysdeps/unix/sysv/linux/cris/bits/resource.h: File removed.
6087         * sysdeps/unix/sysv/linux/hppa/bits/resource.h: File removed.
6088         * sysdeps/unix/sysv/linux/ia64/bits/resource.h: File removed.
6089         * sysdeps/unix/sysv/linux/m68k/bits/resource.h: File removed.
6090         * sysdeps/unix/sysv/linux/powerpc/bits/resource.h: File removed.
6091         * sysdeps/unix/sysv/linux/s390/bits/resource.h: File removed.
6092         * sysdeps/unix/sysv/linux/sh/bits/resource.h: File removed.
6093         * sysdeps/unix/sysv/linux/x86_64/bits/resource.h: File removed.
6095         * sysdeps/unix/sysv/linux/bits/socket.h (struct msghdr): Use size_t
6096         instead of int for msg_iovlen, instead of socklen_t for msg_controllen.
6097         Other than the previously incorrect sign of msg_iovlen, this is a
6098         no-op on 32-bit platforms.  On 64-bit platforms it makes this header
6099         match their layouts as well, so the following are now identical to it.
6100         * sysdeps/unix/sysv/linux/s390/bits/socket.h: File removed.
6101         * sysdeps/unix/sysv/linux/sparc/bits/socket.h: File removed.
6102         * sysdeps/unix/sysv/linux/x86_64/bits/socket.h: File removed.
6103         * sysdeps/unix/sysv/linux/ia64/bits/socket.h: File removed.
6104         * sysdeps/unix/sysv/linux/alpha/bits/socket.h: File removed.
6106 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
6108         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_VFORK_SYSCALL):
6109         Define for 2.4+ kernels.
6111         * sysdeps/unix/sysv/linux/i386/vfork.S: Optimize for kernels which
6112         are known to have the vfork syscall.  Don't confuse the CPUs
6113         branch prediction unit by jumping to the return address.
6115         * sysdeps/unix/sysv/linux/alpha/fpathconf.c (__fpathconf): Add
6116         support for reiserfs and xfs.
6118         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Add case for
6119         XFS link count.
6120         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Define XFS_SUPER_MAGIC
6121         and XFS_LINK_MAX.
6122         Patch by Eric Sandeen <sandeen@sgi.com> [PR libc/4706].
6124 2002-10-16  Jakub Jelinek  <jakub@redhat.com>
6126         * include/libc-symbols.h (attribute_tls_model_ie): Define.
6127         * include/errno.h (errno): Define to __libc_errno in libc.so.
6128         Add attribute_tls_model_ie.
6129         * include/netdb.h (h_errno): Define to __libc_h_errno in libc.so.
6130         Add attribute_tls_model_ie.
6131         * include/resolv.h (_res): Define to __libc_res in libc.so.  Add
6132         attribute_tls_model_ie.
6133         * inet/herrno.c (__libc_h_errno): Add hidden alias to h_errno.
6134         (h_errno): Define.
6135         * resolv/res_libc.c (__libc_res): Add hidden alias to _res.
6136         (_res): Define.
6137         * sysdeps/generic/bits/libc-tsd.h (__libc_tsd_define): Add
6138         attribute_tls_model_ie.
6139         * sysdeps/generic/errno-loc.c (errno): Only undefine if not using
6140         __thread.
6141         * sysdeps/generic/errno.c (__libc_errno): Add hidden alias to errno.
6142         * sysdeps/unix/sysv/linux/i386/sysdep.h (SYSCALL_ERROR_HANDLER): Use
6143         __libc_errno in USE___THREAD case.
6144         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6145         Likewise.
6146         * configure.in (HAVE_TLS_MODEL_ATTRIBUTE): Check for
6147         __attribute__((tls_model (""))).
6148         * configure: Rebuilt.
6149         * config.h.in (HAVE_TLS_MODEL_ATTRIBUTE): Add.
6151 2002-10-15  Ulrich Drepper  <drepper@redhat.com>
6153         * timezone/asia: Update from tzdata2002d.
6154         * timezone/australasia: Likewise.
6155         * timezone/iso3166.tab: Likewise.
6156         * timezone/southamerica: Likewise.
6157         * timezone/zone-tab: Likewise.
6159 2002-10-15  Roland McGrath  <roland@redhat.com>
6161         * sysdeps/generic/dl-tls.c (_dl_deallocate_tls) [TLS_TCB_AT_TP]:
6162         Adjust TCB pointer before calling free, so we get the whole block.
6164 2002-10-14  Roland McGrath  <roland@redhat.com>
6166         * sysdeps/unix/sysv/linux/x86_64/sigaction.c
6167         [HAVE_HIDDEN && !HAVE_BROKEN_VISIBILITY_ATTRIBUTE]: Declare restore_rt
6168         extern using attribute_hidden instead of static, avoids warning.
6170 2002-10-09  Jakub Jelinek  <jakub@redhat.com>
6172         * sysdeps/unix/sysv/linux/configure.in: Use */lib64 for s390x too.
6173         * sysdeps/unix/sysv/linux/configure: Rebuilt.
6175 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
6177         * po/sv.po: Update from translation team.
6179 2002-10-12  H.J. Lu  <hjl@gnu.org>
6181         * sunrpc/thrsvc.c (PROCQUIT): New.
6182         (struct rpc_arg): New.
6183         (dispatch): Call exit (0) if request->rq_proc == PROCQUIT.
6184         (test_one_call): Take struct rpc_arg * instead of CLIENT *c.
6185         (thread_wrapper): Modified for struct rpc_arg * and call PROCQUIT.
6186         (main): Modified for struct rpc_arg *.
6188 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
6190         * dirent/scandir.c: Rearrange code a bit to reduce binary size.
6192 2002-10-14  Jakub Jelinek  <jakub@redhat.com>
6194         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Include tls.h.
6195         (SYSCALL_ERROR_HANDLER): Use RTLD_PRIVATE_ERRNO sequence
6196         in ld.so even if __thread is supported.
6198 2002-10-13  Jakub Jelinek  <jakub@redhat.com>
6200         * sysdeps/unix/sysv/linux/arm/profil-counter.h (profil_counter):
6201         Add hack to prevent the compiler from clobbering the signal context.
6202         * sysdeps/unix/sysv/linux/sh/profil-counter.h (profil_counter):
6203         Likewise.
6204         * sysdeps/unix/sysv/linux/x86_64/profil-counter.h (profil_counter):
6205         Likewise.
6207 2002-10-14  Andreas Jaeger  <aj@suse.de>
6209         * sysdeps/mips/fpu/libm-test-ulps: Regenerated by
6210         Guido Guenther <agx@sigxcpu.org>.
6212 2002-10-14  Ulrich Drepper  <drepper@redhat.com>
6214         * po/sk.po: Update from translation team.
6216 2002-09-26  Roland McGrath  <roland@redhat.com>
6218         * elf/dl-load.c (_dl_dst_count, _dl_dst_substitute): Handle $LIB
6219         dynamic string tag.
6220         * elf/Makefile ($(objpfx)trusted-dirs.st): Make the output define
6221         DL_DST_LIB based on $(slibdir).
6223 2002-10-13  Roland McGrath  <roland@frob.com>
6225         * elf/rtld-Rules ($(objpfx)rtld-libc.a): Use $(verbose) in ar command.
6227         * sysdeps/mach/hurd/getresuid.c: New file.
6228         * sysdeps/mach/hurd/getresgid.c: New file.
6229         * sysdeps/mach/hurd/setresuid.c: New file.
6230         * sysdeps/mach/hurd/setresgid.c: New file.
6232         * posix/unistd.h [__USE_GNU] (getresuid, getresgid, setresuid,
6233         setresgid): Declare them.
6234         * NEWS: Mention it.
6235         * include/unistd.h
6236         (__getresuid, __getresgid, __setresuid, __setresgid): Declare them,
6237         add libc_hidden_proto.
6238         * posix/Versions (libc: GLIBC_2.3.2): New set.  Add
6239         getresuid, getresgid, setresuid, setresgid here.
6240         * Versions.def (libc): Define GLIBC_2.3.2 set.
6241         * sysdeps/generic/getresuid.c (__getresuid): Fix argument types.
6242         Add libc_hidden_def.
6243         * sysdeps/generic/getresgid.c (__getresgid): Likewise.
6244         * sysdeps/generic/setresgid.c: New file.
6245         * sysdeps/generic/setresuid.c: New file.
6246         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
6247         (sysdep_routines): Don't add getresuid and getresgid here.
6248         * sysdeps/unix/sysv/linux/arm/Makefile [$(subdir) = misc]
6249         (sysdep_routines): Don't add setresuid and setresgid here.
6250         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
6251         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
6252         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
6253         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
6254         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
6255         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
6256         * posix/Makefile (routines): Add them all here instead.
6257         * sysdeps/unix/sysv/linux/i386/getresuid.c (getresuid): Renamed to
6258         __getresuid.  Add libc_hidden_def for that, and weak alias to old name.
6259         * sysdeps/unix/sysv/linux/i386/getresgid.c (getresgid): Renamed to
6260         __getresgid.  Add libc_hidden_def for that, and weak alias to old name.
6261         * sysdeps/unix/sysv/linux/i386/setresuid.c: Add libc_hidden_def.
6262         [! __NR_setresuid]: Include generic file.
6263         * sysdeps/unix/sysv/linux/i386/setresgid.c (setresgid): Renamed to
6264         __setresgid.  Add libc_hidden_def for that, and weak alias to old name.
6265         [! __NR_setresuid]: Include generic file.
6266         * sysdeps/unix/sysv/linux/syscalls.list (setresuid, setresgid):
6267         Caller is - now, not EXTRA.
6268         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.list
6269         (setresuid, setresgid, getresuid, getresgid): Likewise.
6270         * sysdeps/unix/sysv/linux/syscalls.list (getresuid, getresgid):
6271         Add these calls here.
6272         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Remove them here.
6273         * sysdeps/unix/sysv/linux/hppa/syscalls.list: Likewise.
6274         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
6275         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
6276         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
6277         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
6278         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Likewise.
6279         * sysdeps/unix/sysv/linux/mips/syscalls.list: Likewise.
6280         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
6282         * sysdeps/unix/sysv/linux/Makefile [$(subdir) = misc]
6283         (sysdep_routines): Add setfsuid and setfsgid here.
6284         * sysdeps/unix/sysv/linux/arm/Makefile: Not here.
6285         * sysdeps/unix/sysv/linux/sparc/sparc32/Makefile: Likewise.
6286         * sysdeps/unix/sysv/linux/cris/Makefile: Likewise.
6287         * sysdeps/unix/sysv/linux/sh/Makefile: Likewise.
6288         * sysdeps/unix/sysv/linux/s390/s390-32/Makefile: Likewise.
6289         * sysdeps/unix/sysv/linux/s390/s390-64/Makefile: Likewise.
6290         * sysdeps/unix/sysv/linux/i386/Makefile: Likewise.
6291         * sysdeps/unix/sysv/linux/m68k/Makefile: Likewise.
6293         * hurd/errno.c: Renamed to ...
6294         * hurd/errno-loc.c: ... this.
6295         * hurd/Makefile (routines): errno -> errno-loc
6297 2002-10-13  Ulrich Drepper  <drepper@redhat.com>
6299         * po/de.po: Update from translation team.
6301         * MakeTAGS: Add -E flag to xgettext runs.
6303 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
6305         * po/fr.po: Update from translation team.
6307         * sysdeps/posix/system.c: Remove support for old and buggy SCO systems.
6308         Optimize a bit for use in glibc.
6310 2002-10-12  Roland McGrath  <roland@redhat.com>
6312         * stdio-common/tst-rndseek.c (TIMEOUT): Increase to 10 seconds.
6313         Some machines are slow.  Guido Guenther <agx@sigxcpu.org> has one.
6315 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
6317         * po/sv.po: Update from translation team.
6319 2002-10-11  Isamu Hasegawa  <isamu@yamato.ibm.com>
6321         * posix/regcomp.c (re_compile_fastmap_iter): Remove the handling
6322         OP_CONTEXT_NODE.
6323         (regfree): Likewise.
6324         (create_initial_state): Likewise.
6325         (analyze): Remove the substitutions which became useless.
6326         (calc_first): Likewise.
6327         (calc_epsdest): Use edests of OP_BACK_REF in case that it has
6328         epsilon destination.
6329         (duplicate_node_closure): New function.
6330         (duplicate_node): Remove the handling OP_CONTEXT_NODE.
6331         (calc_inveclosure): Likewise.
6332         (calc_eclosure): Likewise.
6333         (calc_eclosure_iter): Invoke duplicate_node_closure instead of
6334         direct invocation of duplicate_node.
6335         (parse): Don't use comma operator in the return to avoid compiler
6336         warning.
6337         (parse_reg_exp): Likewise.
6338         (parse_branch): Likewise.
6339         (parse_expression): Likewise.
6340         (parse_sub_exp): Likewise.
6341         (parse_dup_op): Likewise.
6342         * posix/regex_internal.c (re_dfa_add_node): Remove the substitutions
6343         which became useless.
6344         (create_ci_newstate): Remove the handling OP_CONTEXT_NODE.
6345         (create_cd_newstate): Likewise.
6346         * posix/regex_internal.h (re_token_type_t): Remove the obsolete type.
6347         (re_token_t): Likewise.
6348         (re_dfa_t): Likewise.
6349         (re_node_set_remove): New macro.
6350         * posix/regexec.c (check_matching): Remove the handling
6351         OP_CONTEXT_NODE.
6352         (check_halt_node_context): Likewise.
6353         (proceed_next_node): Likewise.
6354         (pop_fail_stack): Fix the memory leak.
6355         (set_regs): Likewise.
6356         (free_fail_stack_return): New function.
6357         (sift_states_backward): Fix the memory leak.  Remove the handling
6358         OP_CONTEXT_NODE.
6359         (update_cur_sifted_state): Append some if clause to avoid redundant
6360         call.
6361         (sub_epsilon_src_nodes): Use IS_EPSILON_NODE since it might be a
6362         back reference.
6363         (check_dst_limits): Remove the handling OP_CONTEXT_NODE.
6364         (check_subexp_limits): Likewise.
6365         (search_subexp): Likewise.
6366         (sift_states_bkref): Likewise.
6367         (transit_state_mb): Likewise.
6368         (transit_state_bkref_loop): Likewise.
6369         (transit_state_bkref_loop): Likewise.
6370         (group_nodes_into_DFAstates): Likewise.
6371         (check_node_accept): Likewise.
6372         (sift_ctx_init): Add initializing.
6374 2002-10-12  Ulrich Drepper  <drepper@redhat.com>
6376         * sysdeps/unix/sysv/linux/i386/sysdep.h (INLINE_SYSCALL): Use
6377         __builtin_expect.
6379 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
6381         * elf/dl-load.c (_dl_map_object_from_fd): Remove unnecessarily
6382         duplicated variable c.
6384         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Use INTERNAL_SYSCALL
6385         if possible.
6387         * sysdeps/unix/sysv/linux/i386/sysdep.h
6388         (INTERNAL_SYSCALL_ERROR_P): New define.
6389         (INTERNAL_SYSCALL_ERRNO): Likewise.
6391         * sysdeps/unix/sysv/linux/i386/profil-counter.h (profil_counter):
6392         Add hack to prevent the compiler from clobbering the signal context.
6394 2002-10-11  Roland McGrath  <roland@redhat.com>
6396         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER):
6397         Fix typos.
6399         * sysdeps/generic/dl-lookupcfg.h: Include <tls.h>.
6400         * sysdeps/sh/dl-lookupcfg.h: File removed.
6401         * sysdeps/i386/dl-lookupcfg.h: File removed.
6403         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (SYSCALL_ERROR_HANDLER): Add
6404         missing labels and ; from last change.
6406         * stdio-common/tst-sscanf.c (val_double): Append .0 to large whole
6407         number literals, so they are doubles instead of ints.
6409 2002-10-09  Roland McGrath  <roland@redhat.com>
6411         * sysdeps/generic/bits/libc-tsd.h [USE___THREAD]: Conditional
6412         changed from [USE_TLS && HAVE___THREAD].
6414         * sysdeps/i386/dl-machine.h (elf_machine_type_class, elf_machine_rel):
6415         Disable TLS relocs if [RTLD_BOOTSTRAP && !USE___THREAD].
6416         * sysdeps/x86_64/dl-machine.h
6417         (elf_machine_type_class, elf_machine_rela): Likewise.
6418         * sysdeps/sh/dl-machine.h (elf_machine_type_class, elf_machine_rela):
6419         Likewise.
6421         * include/link.h (struct link_map): Remove member l_tls_tp_initialized.
6422         * elf/rtld.c (_dl_start_final, dl_main): Don't use it.
6423         (_dl_start): Conditionalize PT_TLS check on [USE___THREAD].
6425         * sysdeps/i386/dl-tls.h (__TLS_GET_ADDR): Use ___tls_get_addr_internal
6426         instead of ___tls_get_addr.
6427         (___tls_get_addr_internal): Add attribute_hidden to decl.
6429         * sysdeps/generic/ldsodefs.h (struct rtld_global): New variable
6430         _dl_error_catch_tsd.
6431         * elf/rtld.c (startup_error_tsd): New function.
6432         (dl_main): Point _dl_error_catch_tsd at that.
6433         * elf/dl-error.c: Don't use libc-tsd.h for DL_ERROR,
6434         use new function pointer instead.
6435         * elf/dl-tsd.c: New file.
6436         * elf/Makefile (routines): Add it.
6438 2002-10-07  Roland McGrath  <roland@redhat.com>
6440         * elf/dl-misc.c (_dl_debug_vdprintf): Use INTERNAL_SYSCALL macro for
6441         writev if it's available.  Otherwise if [RTLD_PRIVATE_ERRNO] then
6442         take _dl_load_lock around calling __writev.
6444         * sysdeps/unix/sysv/linux/i386/sysdep.h (INTERNAL_SYSCALL): New macro.
6445         (INLINE_SYSCALL): Use that.
6447         * sysdeps/generic/dl-sysdep.h: New file.
6448         * sysdeps/mach/hurd/dl-sysdep.h: New file.
6449         * sysdeps/generic/ldsodefs.h: Include <dl-sysdep.h>.
6450         * include/errno.h [IS_IN_rtld]: Include <dl-sysdep.h> to define ...
6451         [RTLD_PRIVATE_ERRNO]: Use a hidden global variable for errno and
6452         access it directly.
6453         * elf/dl-minimal.c (__errno_location): Removed.
6454         * sysdeps/unix/i386/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
6455         Use GOTOFF access for errno.
6456         * sysdeps/unix/sysv/linux/i386/sysdep.h
6457         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
6459         * sysdeps/unix/x86_64/sysdep.S (__syscall_errno) [RTLD_PRIVATE_ERRNO]:
6460         Use PC-relative access for errno.
6461         * sysdeps/unix/sysv/linux/x86_64/sysdep.h
6462         [RTLD_PRIVATE_ERRNO] (SYSCALL_ERROR_HANDLER): Likewise.
6464         * include/tls.h: New file.
6465         (USE___THREAD): New macro.
6466         Define to 1 under [USE_TLS && HAVE___THREAD] and only when compiling
6467         libc or libpthread.
6468         * sysdeps/unix/sysv/linux/i386/sysdep.h [USE___THREAD]: Conditional
6469         changed from [USE_TLS && HAVE___THREAD].
6470         * sysdeps/unix/sysv/linux/x86_64/sysdep.h: Likewise.
6471         * sysdeps/unix/i386/sysdep.S: Likewise.
6472         * sysdeps/unix/x86_64/sysdep.S: Likewise.
6473         * include/errno.h: Likewise.
6474         * include/netdb.h: Likewise.
6475         * include/resolv.h: Likewise.
6477         * sysdeps/generic/errno.c: New file.
6478         * csu/Makefile (aux): New variable, list errno.
6479         * sysdeps/unix/sysv/linux/i386/sysdep.S (errno, _errno): Remove defns.
6480         * sysdeps/unix/sysv/linux/m68k/sysdep.S: Likewise.
6481         * sysdeps/unix/sysv/linux/x86_64/sysdep.S: Likewise.
6482         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S: Likewise.
6483         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S: Likewise.
6484         * sysdeps/unix/sysv/linux/arm/sysdep.S: Likewise.
6485         * sysdeps/unix/sysv/linux/cris/sysdep.S: Likewise.
6486         * sysdeps/unix/sysv/linux/hppa/sysdep.c: Likewise.
6487         * sysdeps/unix/sysv/linux/ia64/sysdep.S: Likewise.
6488         * sysdeps/unix/sysv/linux/powerpc/sysdep.c: Likewise.
6489         * sysdeps/unix/sysv/linux/sparc/sysdep.S: Likewise.
6490         * sysdeps/unix/sysv/linux/sh/sysdep.S: Likewise.
6491         * sysdeps/unix/alpha/sysdep.S: Likewise.
6492         * sysdeps/generic/start.c: Likewise.
6493         * sysdeps/unix/start.c: Likewise.
6494         * sysdeps/unix/arm/start.c: Likewise.
6495         * sysdeps/unix/bsd/ultrix4/mips/start.S: Likewise.
6496         * sysdeps/unix/sparc/start.c: Likewise.
6497         * sysdeps/unix/sysv/irix4/start.c: Likewise.
6498         * sysdeps/unix/sysv/linux/mips/sysdep.S: File removed.
6500         * manual/search.texi (Tree Search Function, Hash Search Function):
6501         Mention search.h clearly.
6503 2002-10-05  Roland McGrath  <roland@redhat.com>
6505         * elf/dl-fxstat64.c: File removed.
6506         * elf/dl-xstat64.c: File removed.
6507         * elf/Makefile (rtld-routines): Remove them.
6508         * sysdeps/unix/sysv/linux/xstat64.c: Remove RTLD_STAT64 conditionals.
6509         Instead, use strong_alias instead of versioned_symbol in the
6510         !SHLIB_COMPAT case.
6511         * sysdeps/unix/sysv/linux/fxstat64.c: Likewise.
6512         * sysdeps/unix/sysv/linux/lxstat64.c: Likewise.
6514         * include/shlib-compat.h
6515         (SHLIB_COMPAT): Require that IS_IN_##lib be defined nonzero.
6516         [! NOT_IN_libc] (IS_IN_libc): Define it.
6517         * cppflags-iterator.mk (CPPFLAGS-$(cpp-src)): Use -Dx=1 not just -Dx.
6518         * elf/Makefile (CPPFLAGS-.os): Likewise.
6520         * sunrpc/rpc_main.c (main): Don't declare with noreturn attribute.
6521         Return the status instead of calling exit.
6523         * Makeconfig (CFLAGS): Prepend -std=gnu99.
6524         * Makerules (+make-deps): Use $(CFLAGS) only for .c sources.
6525         Remove superfluous rm command, whose @ plus make bugs hid
6526         all these commands from the make output.
6528         * include/stubs-prologue.h: New file.  Give #error under #ifdef _LIBC.
6529         * Makefile ($(inst_includedir)/gnu/stubs.h): Depend on it.
6530         Use that file's contents instead of literal echo's for the prologue.
6531         * include/features.h: Include <gnu/stubs.h> unconditionally.
6532         * include/gnu/stubs.h: New file.
6534 2002-09-30  Roland McGrath  <roland@redhat.com>
6536         * elf/rtld-Rules: New file.
6537         * elf/Makefile ($(objpfx)librtld.map, $(objpfx)librtld.mk,
6538         $(objpfx)rtld-libc.a): New targets.
6539         (generated): Add them.
6540         (reloc-link): Remove -o $@ from the variable.
6541         ($(objpfx)dl-allobjs.os): Add -o $@ after $(reloc-link).
6542         (distribute): Add rtld-Rules.
6543         (CPPFLAGS-.os): Define this instead of CFLAGS-.os.
6544         * Makerules ($(+sysdir_pfx)sysd-rules): Emit rules for rtld-% targets.
6545         (common-mostlyclean, common-clean): Clean up rtld-* files.
6546         * sysdeps/unix/make-syscalls.sh: Add rtld-*.os target name to rules.
6548 2002-10-11  Roland McGrath  <roland@redhat.com>
6550         * sysdeps/generic/dl-tls.c (__tls_get_addr): After freeing block in
6551         now-unused dtv slot, reset the slot to TLS_DTV_UNALLOCATED.
6553         * elf/tls-macros.h [__x86_64__] (TLS_GD): Fix the sequence with the
6554         proper set of no-op insn prefixes.
6556         * elf/tst-tls8.c (do_test): Use %zd format for l_tls_modid members.
6558 2002-10-11  Ulrich Drepper  <drepper@redhat.com>
6560         * sysdeps/unix/sysv/linux/execve.c: Don't try calling
6561         __pthread_kill_other_threads_np.
6563         * sysdeps/generic/pselect.c: Avoid unnecessary sigprocmask calls.
6565 2002-10-08  Roland McGrath  <roland@redhat.com>
6567         * locale/newlocale.c (__newlocale): If setting all categories to "C",
6568         just return &_nl_C_locobj instead of copying it.
6569         * locale/freelocale.c (__freelocale): Check for &_nl_C_locobj.
6570         * locale/duplocale.c (__duplocale): Likewise.
6572 2002-10-07  Roland McGrath  <roland@frob.com>
6574         * config.h.in (HAVE_I386_SET_GDT): New #undef.
6575         * sysdeps/mach/configure.in: Define it with new check for i386_set_gdt.
6576         * sysdeps/mach/configure: Regenerated.
6578 2002-10-06  Franz Sirl  <Franz.Sirl-kernel@lauterbach.com>
6580         * sysdeps/unix/sysv/linux/powerpc/powerpc32/sysdep.h (INLINE_SYSCALL):
6581         Add all necessary register outputs for syscall-clobbered registers.
6583 2002-10-02  David Mosberger  <davidm@hpl.hp.com>
6585         * sysdeps/ia64/bzero.S: Rewritten by Sverre Jarp to tune for
6586         Itanium 2 (and Itanium).
6587         Fix unwind directives and make it fit in 80 columns.
6588         * sysdeps/ia64/memset.S: Likewise.
6589         * sysdeps/ia64/memcpy.S: Likewise.
6590         Move jump table to .rodata section.
6592 2002-10-03  Roland McGrath  <roland@frob.com>
6594         * sysdeps/mach/hurd/i386/init-first.c (_hurd_stack_setup): Add
6595         clobbers to asm.
6597 2002-10-10  Andreas Jaeger  <aj@suse.de>
6599         * sysdeps/x86_64/_mcount.S: Restore correct registers.
6601 2002-10-10  Ulrich Drepper  <drepper@redhat.com>
6603         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __pselect.
6605 2002-10-09  Ulrich Drepper  <drepper@redhat.com>
6607         * sysdeps/generic/ldsodefs.h: Remove attribute_hidden from
6608         _dl_allocate_tls_init.  Add rtld_hidden_proto.
6609         * sysdeps/generic/dl-tls.c (_dl_allocate_tls_init): Add
6610         rtld_hidden_def.
6611         * elf/Versions (ld) [GLIBC_PRIVATE]: Add _dl_allocate_tls_init.
6613         * version.h (VERSION): Bump to 2.3.1.
6615         * Make-dist: Add back one of the tar invocations removed before.
6617         * stdlib/Makefile (distribute): Add allocalim.h.
6619         * sysdeps/generic/bits/libc-tsd.h [!(USE_TLS && HAVE___THREAD)]
6620         (__libc_tsd_address): Use correct variable name.
6621         Patch by Stefan Jones <stefan.jones@multigig.com>.
6623         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Add missing ;;.
6624         Reported by edwardsg@sgi.com [PR libc/4678].
6626         * Versions.def (libc): Add GLIBC_2.3.1.
6627         (libpthread): Add GLIBC_2.3.1.
6629         * include/signal.h: Add libc_hidden_proto for __sigwait, __sigwaitinfo,
6630         and __sigtimedwait.
6631         * signal/Versions: Add __sigtimedwait, __sigwait, and __sigwaitinfo.
6632         * sysdeps/unix/sysv/linux/sigtimedwait.c (__sigtimedwait): Add
6633         libc_hidden_def.
6634         * sysdeps/unix/sysv/linux/sigwait.c (__sigwait): Likewise.
6635         * sysdeps/unix/sysv/linux/sigwaitinfo.c (__sigwaitinfo): Likewise.
6637         * include/sys/msg.h: Declare __libc_msgrcv and __libc_msgsnd.
6638         * sysdeps/unix/sysv/linux/msgrcv.c (__msgrcv): Rename to __libc_msgrcv
6639         and make old name an alias.
6640         * sysdeps/unix/sysv/linux/msgsnd.c (__msgsnd): Rename to __libc_msgsnd
6641         and make old name an alias.
6642         * sysvipc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_msgrcv and
6643         __libc_msgsnd.
6645         * include/sys/uio.h: Declare __libc_readv and __libc_writev.
6646         * misc/Versions (libc) [GLIBC_PRIVATE]: Add __libc_readv and
6647         __libc_writev.
6648         * sysdeps/generic/readv.c (__readv): Rename to __libc_readv and make
6649         old name an alias.
6650         * sysdeps/posix/readv.c: Likewise
6651         * sysdeps/unix/sysv/aix/readv.c: Likewise.
6652         * sysdeps/unix/sysv/linux/readv.c: Likewise.
6653         * sysdeps/generic/writev.c (__writev): Rename to __libc_writev and make
6654         old name an alias.
6655         * sysdeps/posix/writev.c: Likewise
6656         * sysdeps/unix/sysv/aix/writev.c: Likewise.
6657         * sysdeps/unix/sysv/linux/writev.c: Likewise.
6659         * include/sys/wait.h: Declare __waitid.
6660         * posix/Versions (libc) [GLIBC_PRIVATE]: Add __waitid.
6661         * sysdeps/generic/waitid.c (waitid): Rename to __waitid and make old
6662         name an alias.
6663         * sysdeps/posix/waitid.c: Likewise.
6664         * sysdeps/unix/sysv/aix/waitid.c: Likewise.
6666         * sysdeps/unix/sysv/linux/syscalls.list: Add creat syscall.
6668 2002-10-07  Jakub Jelinek  <jakub@redhat.com>
6670         * include/alloca.h (__libc_use_alloca, __libc_alloca_cutoff): New
6671         prototypes.
6672         (__MAX_ALLOCA_CUTOFF): Define.
6673         Include allocalim.h.
6674         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyname2_r,
6675         _nss_dns_gethostbyaddr_r): Use alloca or malloc to allocate
6676         host_buffer depending on __libc_use_alloca.
6677         * resolv/nss_dns/dns-network.c (_nss_dns_getnetbyname_r,
6678         _nss_dns_getnetbyaddr_r): Use alloca or malloc to allocate
6679         net_buffer depending on __libc_use_alloca.
6680         * resolv/res_query.c (res_nquery): Use alloca or malloc to allocate
6681         buf depending on __libc_use_alloca.
6682         * resolv/gethnamaddr.c (gethostbyname2, gethostbyaddr): Likewise.
6683         * stdio-common/vfprintf.c (vfprintf): Use __libc_use_alloca
6684         instead of hardcoded constants.
6685         Pass proper size argument to alloca and compute end for wide char
6686         version.
6687         * stdio-common/printf_fp.c (__printf_fp): Use __libc_use_alloca
6688         instead of hardcoded constants.
6689         * string/strcoll.c (strcoll): Likewise.
6690         * string/strxfrm.c (strxfrm): Likewise.
6691         * sysdeps/posix/readv.c (__readv): Likewise.
6692         * sysdeps/posix/writev.c (__writev): Likewise.
6693         * sysdeps/generic/allocalim.h: New file.
6695 2002-10-08  Roland McGrath  <roland@redhat.com>
6697         * configure.in (aux_missing warning): Change "too old" to
6698         "incompatible versions", since for autoconf it's "too new" right now.
6699         * configure: Regenerated.
6701         * configure.in (AUTOCONF): New check to set it.  Set to "no" if the
6702         one found doesn't work on our configure.in.
6703         * configure: Regenerated.
6704         * config.make.in (AUTOCONF): New substituted variable.
6705         * Makefile (autoconf-it-cvs): New canned sequence, broken out of ...
6706         (autoconf-it): ... here, use that instead of defining conditionally.
6707         Use $(AUTOCONF) instead of literal autoconf.
6708         [$(AUTOCONF) != no] (configure, %/configure): Protect these rules
6709         with this condition.
6710         * Make-dist (autoconf-it, configure, %/configure): Copy those changes.
6712 2002-10-08  Ulrich Drepper  <drepper@redhat.com>
6714         * Make-dist (dist): Cleanup a bit.  We are not interested in the
6715         14 char filename limit anymore.  Remove intermediate files and
6716         symlinks.
6718 2002-10-05  Ulrich Drepper  <drepper@redhat.com>
6720         * po/sk.po: Update from translation team.
6721         * po/tr.po: Likewise.
6722         * po/gl.po: Likewise.
6724 2002-10-05  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
6726         * elf/tls-macros.h: Fix SH version of macros so as to match ABI syntax.
6728 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
6730         * version.h (RELEASE): Change to stable.
6732 2002-10-03  Jakub Jelinek  <jakub@redhat.com>
6734         * sysdeps/unix/sysv/linux/_exit.c (__syscall_exit,
6735         __syscall_exit_group): New prototypes.
6737 2002-10-03  Ulrich Drepper  <drepper@redhat.com>
6739         * glibc 2.3 released.
6742 See ChangeLog.13 for earlier changes.