a96e71d334d02c9201bab182453bcacd8605a487
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2004-03-10  Chris Heath  <chris@heathens.co.nz>
2
3         * iconvdata/gconv.map: Add gconv_end (fixes memory leak).
4
5 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
6
7         * sysdeps/powerpc/powerpc32/__longjmp.S (JB_SIZE): Undefine before
8         including __longjmp-common.S again.
9         * sysdeps/powerpc/powerpc64/__longjmp.S (JB_SIZE): Likewise.
10         * sysdeps/powerpc/powerpc32/setjmp.S (JB_SIZE): Undefine before
11         including setjmp-common.S again.
12         * sysdeps/powerpc/powerpc64/setjmp.S (JB_SIZE): Likewise.
13         * sysdeps/powerpc/novmxsetjmp.h (__novmx__longjmp): Fix type of
14         first argument in the prototype.
15         * sysdeps/powerpc/longjmp.c (__vmx__longjmp, __vmx__libc_longjmp):
16         Remove bogus semicolons.
17
18         * sysdeps/s390/dl-tls.h: Only add __tls_get_offset assembly if
19         IS_IN_rtld.
20         (__TLS_GET_ADDR): Use __tls_get_offset, not __tls_get_addr.
21
22 2004-03-11  Ulrich Drepper  <drepper@redhat.com>
23
24         * resolv/ns_ttl.c: Don't add ns_parse_ttl for libresolv.so.
25
26 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
27
28         * sysdeps/generic/errno.c: Include <dl-sysdep.h>.  Use
29         RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
30
31         * elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
32         points wrappers around the unified code.
33
34 2004-03-11  Richard Henderson  <rth@redhat.com>
35
36         * sysdeps/unix/sysv/linux/alpha/kernel_stat.h (kernel_stat64): New.
37         (glibc21_stat): New.
38         * sysdeps/unix/sysv/linux/alpha/fxstat.c: New file.
39         * sysdeps/unix/sysv/linux/alpha/lxstat.c: New file.
40         * sysdeps/unix/sysv/linux/alpha/xstat.c: New file.
41         * sysdeps/unix/sysv/linux/alpha/xstatconv.c (__xstat_conv): Add
42         code for _STAT_VER_GLIBC2_3_4.
43         (__libc_missing_axp_stat64): New.
44         * sysdeps/unix/sysv/linux/alpha/xstatconv.h: New file.
45         * sysdeps/unix/sysv/linux/alpha/bits/stat.h (__ST_TIME): New.
46         (_STAT_VER_GLIBC2_3_4, _STAT_VER_KERNEL64): New.
47         (struct stat, struct stat64): Update to new format.
48         (_STATBUF_ST_NSEC): New.
49
50 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
51
52         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
53         (__novec_swapcontext): Branch to novec_* labels.
54
55 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
56
57         * posix/getopt.c (_): Don't define here for glibc.
58
59 2004-03-10  Jakub Jelinek  <jakub@redhat.com>
60
61         * include/libc-symbols.h [__ASSEMBLY__] (compat_text_section,
62         compat_data_section): Define.
63         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add
64         attribute_compat_text_section.
65         * sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise.
66         * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob,
67         __old_globfree): Likewise.
68         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown):
69         Likewise.
70         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
71         (__posix_fadvise64_l32): Likewise.
72         * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise.
73         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
74         (__posix_fadvise64_l32): Likewise.
75         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl):
76         Likewise.
77         * sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise.
78         * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32):
79         Likewise.
80         * sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise.
81         * hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise.
82         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
83         (__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END.
84         (__novec_swapcontext, __swapcontext_stub): Add compat_text_section.
85         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
86         (__makecontext_stub): Likewise.
87         (__novec_makecontext): Likewise.  Fix name in END () to match
88         function name.
89         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
90         (__setcontext): Use END instead of PSEUDO_END.
91         (__novec_setcontext): Add compat_text_section.  Use END instead of
92         PSEUDO_END, fix the name in END () to match function name.
93         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
94         (__getcontext, __novec_getcontext): Use END instead of PSEUDO_END.
95         (__novec_getcontext, __getcontext_stub): Add compat_text_section.
96
97 2004-03-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
98
99         * sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate.
100         (COPY_UNALIGNED_WORD): Remove cast used as lvalue.
101
102 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
103
104         * sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2.
105
106 2004-03-10  Richard Henderson  <rth@redhat.com>
107
108         * sysdeps/generic/errno.c: Disable versioning for rtld.
109
110         * sysdeps/generic/Makefile (elf/shared): Add unwind-pe.
111         * sysdeps/generic/unwind-pe.c: New file.
112         * sysdeps/generic/unwind-pe.h: Only prototypes for _LIBC without
113         _LIBC_DEFINITIONS.
114
115 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
116
117         * include/libc-symbols.h: Define attribute_compat_text_section and
118         attribute_compat_data_section.
119         * io/ftw.c: Mark compat code with attribute_compat_text_section.
120         * libio/iofopncook.c: Likewise.
121         * libio/oldfileops.c: Likewise.
122         * libio/oldiofclose.c: Likewise.
123         * libio/oldiofdopen.c: Likewise.
124         * libio/oldiofgetpos.c: Likewise.
125         * libio/oldiofgetpos64.c: Likewise.
126         * libio/oldiofopen.c: Likewise.
127         * libio/oldiofsetpos.c: Likewise.
128         * libio/oldiofsetpos64.c: Likewise.
129         * libio/oldiopopen.c: Likewise.
130         * libio/oldpclose.c: Likewise.
131         * libio/oldtmpfile.c: Likewise.
132         * nptl/forward.c: Likewise.
133         * nss/getXXbyYY_r.c: Likewise.
134         * nss/getXXent_r.c: Likewise.
135         * posix/tst-vfork1.c: Likewise.
136         * stdlib/canonicalize.c: Likewise.
137         * stdlib/old_atexit.c: Likewise.
138         * sysdeps/generic/glob.c: Likewise.
139         * sysdeps/posix/posix_fallocate64.c: Likewise.
140         * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
141         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
142         * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise.
143         * sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
144         * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
145         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
146         * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise.
147         * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise.
148         * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
149         * sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
150         * sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
151         * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
152         * posix/regexec.c: Likewise.
153
154         * sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4
155         should be the default symbol. Having none misses the point.
156
157 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
158
159         * stdlib/qsort.c (_quicksort): Initialize first stack element [BZ #16].
160
161 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
162
163         * posix/regexec.c (regexec): Return with error on unknown eflags.
164         Replace weak_alias with versioned_symbol.
165         (__compat_regexec): New.
166         * posix/Versions (libc): Add regexec@GLIBC_2.3.4.
167
168 2004-03-09  Richard Henderson  <rth@redhat.com>
169
170         * math/math.h (isgreater, isgreaterequal, isless, islessequal,
171         islessgreater, isunordered): Use builtins if available.
172         * sysdeps/i386/fpu/bits/mathinline.h: Don't define via builtins.
173         * sysdeps/m68k/fpu/bits/mathinline.h: Likewise.
174         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
175         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
176         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
177         * sysdeps/alpha/fpu/bits/mathinline.h (isgreater, isgreaterequal,
178         isless, islessequal, islessgreater): Remove; use default.
179         (isunordered): Convert inputs to double.
180
181 2004-02-09  Jakub Jelinek  <jakub@redhat.com>
182
183         * posix/Makefile (tests): Add tst-vfork2.
184         * posix/tst-vfork1.c (do_test): Fix comment.
185         * posix/tst-vfork2.c: New test.
186
187 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
188
189         * elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
190         derefernce in error message.  Pretty printing.
191
192         * po/nl.po: Update from translation team.
193
194 2004-03-08  Andreas Schwab  <schwab@suse.de>
195
196         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't truncate
197         sysinfo pointer value.
198
199 2004-03-08  Paul Eggert  <eggert@cs.ucla.edu>
200
201         Merge from gnulib.  We now assume C89 or better.
202         * posix/getopt1.c (const): Remove.
203         * posix/getopt.c (const): Likewise.
204         * posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
205         _getopt_long_only_r, main): Use prototypes, not old-style definitions.
206         * posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
207         _getopt_internal, getopt, main): Likewise.
208         * posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
209         * posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
210         Include <string.h> regardless.  No need for <strings.h>.
211         [!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
212         (_): Define to gettext always.
213         (my_index): Remove: all uses changed to strchr.
214         (strlen): Remove declaration.
215         * posix/getopt.h (struct option.name): Always const char *.
216
217 2004-03-08  Marcus Brinkmann  <marcus@gnu.org>
218
219         * posix/getopt.h (_getopt_internal): Move to ...
220         * posix/getopt_int.h: ... here.  New file.
221         * include/getopt_int.h: New file.
222         * include/getopt.h: Remove libc_hidden_proto for getopt_long
223         and getopt_long_only.
224         * posix/getopt1.c: Include "getopt_int.h".  Remove
225         libc_hidden_def for getopt_long and getopt_long_only.
226         (_getopt_long_r, _getopt_long_only_r): New functions.
227         * posix/getopt.c: Include "getopt_int.h".
228         (__getopt_initialized): Variable removed.
229         (nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
230         Static variables removed.
231         (nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
232         USE_NONOPTION_FLAGS]: Static variables removed.
233         (getopt_data): New static variable.
234         (SWAP_FLAGS): Use d->__nonoption_flags_len instead
235         nonoption_flags_len.
236         (exchange): Add new argument D of type struct getopt_data *.
237         Replace optind with d->optind, optarg with d->optarg, opterr with
238         d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
239         first_nonopt with d->__first_nonopt, last_nonopt with
240         d->__last_nonopt, d->ordering with d->__ordering,
241         d->posixly_correct with d->__posixly_correct (which is now an
242         int instead a string, so fix users), nonoption_flags_len
243         with d->__nonoption_flags_len, nonoption_flags_max_len with
244         d->__nonoption_flags_max_len.
245         (_getopt_initialize): Likewise.
246         (_getopt_internal): Rename to ...
247         (_getopt_internal_r): ... this.  Also add new argument D of type
248         struct getopt_data * and use of members of D rather than global or
249         static variables as described for exchange() above.  Add new argument
250         to invocations of _getopt_initialize and exchange.
251         (_getopt_internal): Reimplement in terms of _getopt_internal_r.
252         * argp/argp-parse.c: Include <getopt_int.h>.
253         [_LIBC]: Do not include <bits/libc-lock.h>.
254         [!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
255         [!_LIBC] (_argp_hang): Make static.
256         (getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
257         (_argp_unlock_xxx): Remove.
258         (parser_init): Do not use LOCK_GETOPT.
259         (parser_finalize): Do not use UNLOCK_GETOPT.
260         (struct parser): New member OPT_DATA.
261         (parser_init): Initialize parser->opt_data.  Use
262         parser->opt_data.opterr instead of opterr.
263         (parser_parse_opt): Use parser->opt_data.optarg instead optarg.
264         (parser_parse_next): Likewise.  Use parser->opt_data.optind
265         instead optind.  Use parser->opt_data.optopt instead of optopt.
266         Call _getopt_long_only_r and _getopt_long_r instead of
267         getopt_long_only and getopt_long, and pass the extra argument.
268
269 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
270
271         * iconv/gconv_db.c: Don't define lock as static.  Rename to
272         __gconv_lock and export from the file.
273         * iconv/gconv_int.h: Declare __gconv_lock.
274         * libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock
275         before __gconv_release_step calls.
276         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
277
278         * iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change.
279
280         * posix/Makefile (tests): Add tst-vfork1.
281         * posix/tst-vfork1.c: New file.
282
283 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
284
285         * sysdeps/i386/dl-machine.h: Define ARCH_FIXUP_ATTRIBUTE and use
286         it in the fixup function declarations.
287         * elf/dl-runtime.c: If ARCH_FIXUP_ATTRIBUTE is not defined,
288         provide dummy definition.  Use macro in fixup function
289         definitions.
290
291         * sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
292         RESTORE_PID are defined, use it.
293         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
294
295         * sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
296
297         * Makerules: Use extra-modules.mk if modules-names is defined.
298         * extra-modules.mk: New file.
299         * dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
300         * elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
301         * csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
302         compiler.
303         * Makefile (distribute): Add symbol-hacks.h and extra-modules.mk.
304         * sysdeps/generic/symbol-hacks.h: New file.
305         * sysdeps/wordsize-32/symbol-hacks.h: New file.
306         * sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
307         __moddi3, __udivdi3, and __umoddi3.
308         * include/libc-symbols.h: Include <symbol-hacks.h>.
309
310 2004-03-08  Jeroen Dekkers  <jeroen@dekkers.cx>
311
312         * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
313
314         * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
315         Don't use INTUSE with _dl_signal_error.
316
317 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
318
319         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
320         Don't use INTUSE with _dl_signal_error.
321
322 2004-03-08  Richard Henderson  <rth@redhat.com>
323
324         * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
325         in name.
326
327 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
328
329         * config.h.in: Add entry for HAVE_LIBIDN.
330         * configure.in: If libidn add-on present define HAVE_LIBIDN.
331         * Versions.def: Add entry for libcidn.
332
333 2004-03-07  Simon Josefsson  <jas@extundo.com>
334
335         * resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
336         [__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
337         * sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
338         and define IDNA_SUCCESS.
339         (gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
340         (getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
341         All changes only applicable when glibc is compiled with the libidn
342         add-on.
343
344 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
345
346         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
347         _dl_lookup_symbol_x not _dl_lookup_symbol.
348
349         * sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
350         _dl_hwcap into _rtld_global_ro.
351         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
352         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
353         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
354         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
355         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
356         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
357         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
358         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
359         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
360         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
361
362 2004-03-07  Andreas Schwab  <schwab@suse.de>
363
364         * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
365
366 2004-03-07  Andreas Jaeger  <aj@suse.de>
367
368         * iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
369         * iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
370         * iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
371         * iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
372         * iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
373
374 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
375
376         * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
377         _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
378         dl-procinfo.c from _rtld_global to _rtld_global_ro.
379         * elf/rtld.c: Adjust initializer for _rtld_global_ro.
380         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
381         * elf/dl-libc.c: Likewise.
382         * elf/dl-load.c: Likewise.
383         * sysdeps/i386/dl-procinfo.h: Likewise.
384         * sysdeps/i386/i686/hp-timing.h: Likewise.
385         * sysdeps/ia64/hp-timing.h: Likewise.
386         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
387         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
388         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
389         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
390         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
391         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
392         * string/test-string.h: Define GLRO.
393
394 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
395
396         * elf/dl-lookup.c: We don't need for specialized lookup functions.
397         Combining the functionality does not slow down relocation processing,
398         it might even speed it up a little.
399         * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
400         Add only one function pointer to rtlf_global_ro.
401         * elf/do-lookup.h: Replace #ifs with ifs.
402         * elf/dl-libc.c: Adjust _dl_lookup_* callers.
403         * elf/dl-reloc.c: Likewise.
404         * elf/dl-runtime.c: Likewise.
405         * elf/dl-sym.c: Likewise.
406         * elf/rtld.c: Likewise.  Adjust _rtld_global_ro initialization.
407
408 2004-03-06  Richard Henderson  <rth@redhat.com>
409
410         * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
411         __rtld_global_attribute__): Undef after use.
412         (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
413         if available.
414
415         * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
416         * sysdeps/alpha/Implies: Add alpha/soft-fp.
417         * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
418         * sysdeps/alpha/Subdirs: New file.
419         * sysdeps/alpha/soft-fp/Makefile: New file.
420         * sysdeps/alpha/soft-fp/Versions: New file.
421         * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
422         * sysdeps/alpha/soft-fp/ots_add.c: New file.
423         * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
424         * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
425         * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
426         * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
427         * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
428         * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
429         * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
430         * sysdeps/alpha/soft-fp/ots_div.c: New file.
431         * sysdeps/alpha/soft-fp/ots_mul.c: New file.
432         * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
433         * sysdeps/alpha/soft-fp/ots_sub.c: New file.
434
435 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
436
437         * configure.in: Recognize --enable-bind-now.
438         * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
439         in ld.so.
440         * Makerules (LDFLAGS-c.so): Add -z now if so configured.
441         * elf/Makefile ($(objpfx)ld.so): Likewise.
442         * config.make.in (bind-now): New definition.
443
444         * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
445         * elf/rtld.c (print_statistics): Likewise.
446
447         * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
448         They are the same in both places.
449         * elf/dl-profile.c: Likewise.
450         * elf/rtld.c: Likewise.
451         * sysdeps/generic/ldsodefs.h: Likewise.
452         * elf/dl-support.c: Define _dl_profile_output variable.  Initialize it.
453
454 2004-03-05  Ulrich Drepper  <drepper@redhat.com>
455
456         * elf/Versions: Remove functions which are not exported anymore.
457         * dlfcn/dlerror.c: Call ld.so functions through GLSO.
458         * dlfcn/dlinfo.c: Likewise.
459         * elf/dl-close.c: Likewise.
460         * elf/dl-libc.c: Likewise.
461         * elf/dl-open.c: Likewise.
462         * elf/dl-sym.c: Likewise.
463         * sysdeps/generic/libc-start.c: Likewise.
464         * elf/dl-debug.c: Remove *_internal definition.  Don't use INTUSE for
465         functions which are not exported anymore.
466         * elf/dl-deps.c: Likewise.
467         * elf/dl-dst.h: Likewise.
468         * elf/dl-error.c: Likewise.
469         * elf/dl-fini.c: Likewise.
470         * elf/dl-init.c: Likewise.
471         * elf/dl-load.c: Likewise.
472         * elf/dl-lookup.c: Likewise.
473         * elf/dl-misc.c: Likewise.
474         * elf/dl-profile.c: Likewise.
475         * elf/dl-profstub.c: Likewise.
476         * elf/dl-reloc.c: Likewise.
477         * elf/dl-runtime.c: Likewise.
478         * elf/dl-version.c: Likewise.
479         * elf/do-lookup.h: Likewise.
480         * include/dlfcn.h: Likewise.
481         * sysdeps/generic/dl-cache.c: Likewise.
482         * sysdeps/generic/dl-fptr.c: Likewise.
483         * sysdeps/generic/dl-origin.c: Likewise.
484         * sysdeps/generic/dl-sysdep.c: Likewise.
485         * sysdeps/generic/dl-tls.c: Likewise.
486         * sysdeps/generic/ldsodefs.h: Likewise.
487         * sysdeps/i386/dl-tls.h: Likewise.
488         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
489         * elf/rtld.c: Likewise.  Export function though _rtld_global_ro.
490
491         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
492         dl_debug_fd to rtld_global_ro.
493         * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
494         * elf/dl-misc.c: Likewise.
495
496         * malloc/malloc.c: Don't call exported interface in the implementation.
497
498         * include/wctype.h: Add libc_hidden_proto for __towctrans.
499         * wctype/towctrans.c: Add libc_hidden_def.
500
501         * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
502
503         * posix/regexec.c (transit_state): Remove unused variable
504         next_state.
505
506         * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
507
508         * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
509         Declare _rtld_global_ro and _rtld_local_ro.  Move members of
510         rtld_global structure into the new one if they are modified only
511         at startup time.  Define GLRO to access _rtld_global_ro.
512         * elf/Versions: Export _rtld_global_ro.
513         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
514         * elf/dl-conflict.c: Likewise.
515         * elf/dl-deps.c: Likewise.
516         * elf/dl-dst.h: Likewise.
517         * elf/dl-error.c: Likewise.
518         * elf/dl-fini.c: Likewise.
519         * elf/dl-init.c: Likewise.
520         * elf/dl-load.c: Likewise.
521         * elf/dl-lookup.c: Likewise.
522         * elf/dl-minimal.c: Likewise.
523         * elf/dl-open.c: Likewise.
524         * elf/dl-profile.c: Likewise.
525         * elf/dl-reloc.c: Likewise.
526         * elf/dl-runtime.c: Likewise.
527         * elf/dl-support.c: Likewise.
528         * elf/dl-version.c: Likewise.
529         * elf/do-lookup.h: Likewise.
530         * elf/rtld.c: Likewise.
531         * sysdeps/generic/dl-cache.c: Likewise.
532         * sysdeps/generic/dl-origin.c: Likewise.
533         * sysdeps/generic/dl-sysdep.c: Likewise.
534         * sysdeps/generic/libc-start.c: Likewise.
535         * sysdeps/generic/dl-cache.c: Likewise.
536         * sysdeps/i386/dl-machine.h: Likewise.
537         * sysdeps/i386/setfpucw.c: Likewise.
538         * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
539         * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
540         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
541         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
542         * sysdeps/i386/fpu/fesetround.c: Likewise.
543         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
544         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
545         * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
546         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
547         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
548         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
549         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
550         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
551         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
552         * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
553         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
554         * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
555         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
556         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
557         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
558         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
559         * sysdeps/x86_64/dl-machine.h: Likewise.
560         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
561         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
562         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
563         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
564         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
565         * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
566         * sysdeps/m68k/dl-machine.h: Likewise.
567         * sysdeps/ia64/dl-machine.h: Likewise.
568         * sysdeps/arm/dl-machine.h: Likewise.
569         * sysdeps/alpha/dl-machine.h: Likewise.
570         * generic/dl-fptr.c: Likewise.
571         * mach/hurd/dl-sysdep.c: Likewise.
572         * unix/sysv/linux/ia64/dl-static.c: Likewise.
573         * unix/sysv/linux/ia64/getpagesize.c: Likewise.
574         * unix/sysv/linux/m68k/getpagesize.c: Likewise.
575         * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
576
577 2004-03-04  Ulrich Drepper  <drepper@redhat.com>
578
579         * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
580         * elf/dl-misc.c: Define _dl_name_match_p here.
581         * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
582
583         * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
584         from the right place.
585
586 2004-01-15  Paolo Bonzini  <bonzini@gnu.org>
587
588         * posix/regex.h (REG_STARTEND): Define.
589         * posix/regexec.c (regexec): Check for REG_STARTEND.
590
591 2004-02-29  Paolo Bonzini  <bonzini@gnu.org>
592
593         * posix/regexec.c (transit_state): Don't handle state == NULL.
594         Move state log and backreference management...
595         (merge_state_with_log): ... to this function.
596         (find_recover_state): New function.
597         (check_matching): Use find_recover_state to get a non-NULL
598         state when an invalid state is reached.  Compute the amount
599         of initial characters to be skipped less conservatively when
600         multi-byte character sets are in use.  Do not check
601         dfa->nbackref if the state log is NULL.  Initialize err.
602         (acquire_init_state_context): Expect err to be initialized.
603         Fix spacing.
604
605 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
606
607         * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
608         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
609
610 2004-03-04  Jakub Jelinek  <jakub@redhat.com>
611
612         * iconv/iconv_prog.c (process_block): Handle omit_invalid.
613         If iconv returns EILSEQ with omit_invalid, continue converting
614         and return 1 if no other errors are seen.
615         (main): Set status to EXIT_FAILURE whenever process_* returns
616         nonzero, but only stop processing further files if iy returns
617         negative value.
618
619 2004-03-03  Jakub Jelinek  <jakub@redhat.com>
620
621         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
622         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
623         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
624         Remove.
625         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
626         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
627         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
628         Remove.
629         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
630         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
631         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
632         Remove.
633         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
634         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
635         file.
636         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
637         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
638         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
639         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
640         (posix_fadvise64): Remove.
641         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
642         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
643         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
644         (posix_fadvise64): Remove.
645
646 2004-03-02  Andreas Schwab  <schwab@suse.de>
647
648         * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
649         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
650         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
651
652 2004-03-01  Ulrich Drepper  <drepper@redhat.com>
653
654         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
655         of return value.
656         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
657
658         * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
659         __ASSUME_GETDENTS32_D_TYPE.
660         * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
661         getdents syscall again since it provides d_type information.
662
663 2004-02-29  Andreas Jaeger  <aj@suse.de>
664
665         * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
666         required.
667         (Supported Configurations): Add x86_64-*-linux.
668
669 2004-02-28  Ulrich Drepper  <drepper@redhat.com>
670
671         * sysdeps/i386/i686/memcmp.S: Move table to .rodata.  Patch by HJ Lu.
672
673 2004-02-27  Jakub Jelinek  <jakub@redhat.com>
674
675         * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
676         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
677         GL(dl_sysinfo) if non-zero.
678
679         * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
680
681 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
682
683         * nss/getXXbyYY_r.c: Pass result also to the nscd_* function.  Don't
684         set *result here.
685         * nscd/nscd_proto.h: Add new argument for pointer to result pointer
686         to all nscd_* functions.
687         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter.  Store result
688         pointer in the address provided by the new parameter if successful.
689         Otherwise store NULL.  Return zero if no entry found.
690         (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
691         it on.
692         * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter.  Store
693         result pointer in the address provided by the new parameter if
694         successful. Otherwise store NULL.  Return zero if no entry found.
695         (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
696         __nscd_gethostbyaddr_r): Add new parameter and pass it on.
697         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter.  Store result
698         pointer in the address provided by the new parameter if successful.
699         Otherwise store NULL.  Return zero if no entry found.
700         (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
701         it on.
702
703 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
704
705         * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
706         retval to -1 on error.
707
708 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
709
710         * stdlib/canonicalize.c (__realpath): Simplify.
711
712         * posix/regcomp.c (parse_expression): Avoid duplication in calls
713         to build_charclass_op.
714
715 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
716
717         * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
718         in vDSO's link_map, don't assume l_addr == 0.  Set GL(dl_sysinfo)
719         from e_entry only if AT_SYSINFO not present and adjust by l_addr.
720         Take vDSO into account when inserting rtld into _dl_loaded chain.
721
722 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
723
724         * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
725         number of groups in the cache.  Relax the disconnect between the
726         interface of authdes_getucred and netname2user a bit.
727         * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
728         huge arrays on the stack.
729
730         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
731         not cancelable interfaces.
732
733 2004-02-24  Arnold D. Robbins  <arnold@skeeve.com>
734
735         * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
736         `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
737         compiler warning.
738
739 2004-02-24  Nelson H.F. Beebe  <beebe@math.utah.edu>
740
741         * posix/regcomp.c (parse_expression): Add cast to (const unsigned
742         char *) in calls to `build_charclass_op'.
743         * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
744         to `wcrtomb'.
745         * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
746         bitset_mask, re_string_char_size_a, re_string_wchar_at,
747         re_string_elem_size_at): Change to use prototypes.
748         (re_string_char_size_at, re_string_wchar_at,
749         re_string_elem_size_at): Declare as `internal_function'.
750
751 2004-02-25  Ulrich Drepper  <drepper@redhat.com>
752
753         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
754         _SC_NGROUPS_MAX.
755
756 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
757
758         * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
759         * stdlib/Makefile (tests): Add testmb2.
760         (testmb2-ENV): New.
761         * stdlib/testmb2.c: New test.
762
763 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
764
765         * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
766         inited yet, try to init it before saving old _res.options.
767         * posix/Makefile (xtests): Add bug-ga2.
768         (generated): Add bug-ga2.mtrace and bug-ga2-mem.
769         (xtests): Depend on bug-ga2-mem.
770         ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
771         * posix/bug-ga2.c: New test.
772
773 2004-02-22  Ulrich Drepper  <drepper@redhat.com>
774
775         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
776         content also in case of an overflow in the parameter.
777         Reported by Momchil Velikov <velco@fadata.bg>.
778
779 2004-02-21  Ulrich Drepper  <drepper@redhat.com>
780
781         * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
782         In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
783
784 2004-02-21  Andreas Jaeger  <aj@suse.de>
785
786         * posix/bug-ga1.c: Include <string.h> for memset prototype.
787
788         * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
789
790         * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
791         lvalue.
792
793 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
794
795         * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
796         (__frame_state_for): Set frame_State_for to abort if the compiler
797         is using sjlj.
798         * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
799         build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
800
801 2004-02-20  Alexandre Oliva  <aoliva@redhat.com>
802
803         * resolv/Versions: Remove semicolon from the end of libresolv's
804         GLIBC_2.3.2 version block.
805         * Versions.def (libresolv): Add GLIBC_2.3.2.
806
807 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
808
809         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
810         status register loads.
811
812 2004-02-20  Thorsten Kukuk  <kukuk@suse.de>
813
814         * nscd/nscd.c (termination_handler): Use _exit instead of exit
815
816 2004-02-20  Ulrich Drepper  <drepper@redhat.com>
817
818         * nscd/nscd.c (main): Report fork errors.
819
820         * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
821         * dlfcn/dlvsym.c: Likewise.
822         * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
823         * elf/dl-fini.c: Likewise.
824         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
825
826 2004-02-20  Jakub Jelinek  <jakub@redhat.com>
827
828         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
829         2003-11-27 atan2 test.
830
831         * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
832         with #ifndef __powerpc64__.
833
834         * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
835         DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
836         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
837         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
838         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
839         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
840         * sysdeps/alpha/dl-sysdep.h: New file.
841         * sysdeps/ia64/dl-sysdep.h: New file.
842         * sysdeps/sparc/dl-sysdep.h: New file.
843
844 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
845
846         * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
847         for .gnu.linkonce.b.__sparc32_atomic_locks section.
848         (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
849
850 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
851
852         * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
853         Define as static.
854         * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
855         because gcc does not allow inline of functions that call setjmp.
856
857 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
858
859         * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
860
861 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
862
863         * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
864         use attribute_relro for _dl_argv.
865         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
866         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
867         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
868         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
869
870 2004-02-19  Ulrich Drepper  <drepper@redhat.com>
871
872         * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
873         vfork instead of fork.
874         * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
875
876         * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
877         prevented system-dependent handling from being used.
878
879 2004-02-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
880
881         * test-skeleton.c (main): If set, use environment variable
882         TIMEOUTFACTOR to scale test TIMEOUT.
883
884 2004-02-18  Ulrich Drepper  <drepper@redhat.com>
885
886         * nscd/nscd_conf.c: Include <stdio_ext.h>.
887
888 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
889
890         * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
891         as well.
892
893         * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
894         operations.
895
896         * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
897
898 2004-02-14  Thorsten Kukuk  <kukuk@suse.de>
899
900         * nscd/dbg_log.c (set_logfile): Only save name of logfile,
901         don't open it.
902         (init_logfile): New function, open logfile if requested.
903         * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
904         * nscd/nscd.c (main): Call init_logfile after forking in background.
905         * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
906
907 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
908
909         * elf/rtld.c (dl_main): Don't fail execution if file named in
910         ld.so.preload is not present [BZ #18].
911
912         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
913         changes in last patch.
914
915         * posix/regexec.c (transit_state): Fix typo in commented-out code
916         [BZ #6].
917
918         * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
919         partial bytes [BZ #24].
920         * posix/Makefile (tests): Add bug-ga1.
921         * posix/bug-ga1.c: New file.
922
923 2004-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
924
925         * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
926         * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
927         Non-versioned __longjmp for rtld-__longjmp.
928         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
929         default version of __longjmp.
930         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
931         (__novmx__longjmp): Original version of __longjmp.
932         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
933         Non-versioned _setjmp for rtld-_setjmp.
934         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
935         as default version of _setjmp.
936         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
937         (__novmx_setjmp): Original version of _setjmp.
938         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
939         __vmx__sigsetjmp and define as default version of setjmp.
940         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
941         (__novmxsetjmp): Original version of setjmp.
942         * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
943         * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
944         Non-versioned __sigsetjmp for rtld-setjmp.
945         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
946         as default version of __sigsetjmp.
947         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
948         (__novmx__sigsetjmp): Original version of __sigsetjmp.
949
950         * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
951         * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
952         Non-versioned __longjmp for rtld-__longjmp.
953         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
954         default version of __longjmp.
955         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
956         (__novmx__longjmp): Original version of __longjmp.
957         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
958         Non-versioned _setjmp for rtld-_setjmp.
959         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
960         as default version of _setjmp.
961         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
962         (__novmx_setjmp): Original version of _setjmp.
963         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
964         __vmx__sigsetjmp and define as default version of setjmp.
965         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
966         (__novmxsetjmp): Original version of setjmp.
967         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
968         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
969         Non-versioned __longjmp for rtld-__longjmp.
970         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
971         default version of __longjmp.
972         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
973         (__novmx__longjmp): Original version of __longjmp.
974         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
975         * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
976         Non-versioned __sigsetjmp for rtld-setjmp.
977         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
978         as default version of __sigsetjmp.
979         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
980         (__novmx__sigsetjmp): Original version of __sigsetjmp.
981         * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
982         * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
983         Non-versioned __sigsetjmp for rtld-setjmp.
984         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
985         as default version of __sigsetjmp.
986         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
987         (__novmx__sigsetjmp): Original version of __sigsetjmp.
988
989         * sysdeps/powerpc/Dist: New File.
990         * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
991         and novmx-sigjmp.c
992         * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
993         __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
994         __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
995         and __vmx__libc_siglongjmp.
996         * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
997         JB_SIZE to add VMX regs to __jmp_buf.
998         * sysdeps/powerpc/longjmp.c: New file.
999         * sysdeps/powerpc/novmxsetjmp.h: New file.
1000         * sysdeps/powerpc/novmx-longjmp.c: New file.
1001         * sysdeps/powerpc/novmx-sigjmp.c: New file.
1002         * sysdeps/powerpc/sigjmp.c: New file.
1003
1004 2004-02-13  Jakub Jelinek  <jakub@redhat.com>
1005
1006         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
1007         Define.
1008         (__lrintl, lrintl): Remove.
1009         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
1010         strong_alias spelling.
1011         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
1012         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
1013
1014 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
1015
1016         * posix/getopt.h: Add some non-gcc support.  Patch by Aharon Robbins.
1017
1018 2004-02-12  Mark Brown  <bmark@us.ibm.com>
1019
1020         * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
1021
1022 2004-02-12  Jakub Jelinek  <jakub@redhat.com>
1023
1024         * sysdeps/powerpc/fpu/s_lrint.c: Move to...
1025         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
1026         * sysdeps/powerpc/fpu/s_llrint.c: Move to...
1027         * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
1028         * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
1029         * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
1030         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
1031         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
1032         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
1033
1034         * math/libm-test.inc (lrint_test): Add new test.
1035         (llrint_test, lround_test, llround_test): Likewise.
1036         * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
1037         with result taking up 48 bits.
1038         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
1039         * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
1040         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
1041         with result taking up 31 bits.
1042
1043 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
1044
1045         * locale/programs/locale.c (show_locale_vars): Don't print a value
1046         for LANG if it is not set.
1047
1048 2004-02-11  Jakub Jelinek  <jakub@redhat.com>
1049
1050         * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
1051         (find_collation_sequence_value): Don't look beyond end of
1052         SYMB_EXTRAMB table.
1053         * posix/Makefile (tests): Add bug-regex23.
1054         (bug-regex23-ENV): New.
1055         * posix/bug-regex23.c: New file.
1056
1057 2004-02-10  Roland McGrath  <roland@frob.com>
1058
1059         * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
1060         * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
1061
1062         * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
1063         * sysdeps/mach/configure.in: ... here.
1064         * sysdeps/mach/hurd/configure: Regenerated.
1065         * sysdeps/mach/configure.in: Regenerated.
1066
1067 2004-02-10  Ulrich Drepper  <drepper@redhat.com>
1068
1069         * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
1070         temporary copies of the variables accumulate on the stack.
1071
1072         * stdio-common/_i18n_number.h: Finish last patch.
1073
1074 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1075
1076         * sysdeps/i386/i686/memcmp.S: New file.  Patch by HJ Lu.
1077
1078 2003-12-05  Roland McGrath  <roland@redhat.com>
1079
1080         * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
1081         for vm86@GLIBC_2.0 version.  Add new vm86@GLIBC_2.3.4.
1082         * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
1083         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
1084
1085 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1086
1087         * nis/ypclnt.c: Cleanup last patch.
1088
1089 2004-02-09  Andreas Jaeger  <aj@suse.de>
1090
1091         * configure.in: Remove glibcbug creation.
1092         * configure: Regenerated.
1093
1094         * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
1095
1096 2004-02-03  Thorsten Kukuk  <kukuk@suse.de>
1097
1098         * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
1099         of duplicated code from __yp_bind.
1100         (__yp_bind_file): New, binding dir code from __yp_bind.
1101         (__yp_bind_client_create): New, ypbind code from __yp_bind.
1102         (__ypclnt_call): New, make NIS query.
1103         (do_ypcall): At first use cached data, then try data from
1104         binding directory, after this ask ypbind for a working ypserv.
1105         Based on a patch from Jeff Bastian <jmbastia@ti.com> and
1106         Chris Barrera <cbarrera@ti.com>
1107
1108 2004-01-19  Roland McGrath  <roland@redhat.com>
1109
1110         * configure.in: Don't set CCVERSION.
1111         * configure: Regenerated.
1112         * glibcbug.in: File removed.
1113         * Makefile (install-bin-script): Remove glibcbug.
1114         (glibcbug): Target removed.
1115         (distclean-1): Don't rm glibcbug.
1116         (distribute): Remove glibcbug.in.
1117
1118 2004-02-09  Roland McGrath  <roland@redhat.com>
1119
1120         * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
1121         24, not 23.
1122
1123 2004-01-29  Roland McGrath  <roland@redhat.com>
1124
1125         * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
1126         Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
1127
1128 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1129
1130         * libio/genops.c (_IO_cleanup): Do not use locking when flushing
1131         the buffers.  Some thread might be using a stream.
1132
1133 2004-02-09  Andreas Jaeger  <aj@suse.de>
1134
1135         * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
1136         Patch by Jan Beulich <jbeulich@novell.com>.
1137
1138 2004-02-09  Andreas Schwab  <schwab@suse.de>
1139
1140         * include/rpc/rpc.h: Declare thread variables with their correct type.
1141         * sunrpc/clnt_perr.c: Don't cast thread variables.
1142         * sunrpc/clnt_raw.c: Likewise.
1143         * sunrpc/clnt_simp.c: Likewise.
1144         * sunrpc/key_call.c: Likewise.
1145         * sunrpc/svcauth_des.c: Likewise.
1146         * sunrpc/svc.c: Likewise.
1147         * sunrpc/svc_raw.c: Likewise.
1148         * sunrpc/svc_simple.c: Likewise.
1149
1150 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
1151
1152         * stdio-common/_i18n_number.h: Support printing localized decimal
1153         point and thousand separator.
1154         * wctype/wctrans.c: Add __wctrans alias.
1155         * include/wctype.h: Declare __wctrans.
1156         Based on a patch by Hamed Malek.
1157
1158         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
1159         other than the status bits [BZ #10].
1160
1161 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
1162
1163         Make stream locking operations really work.
1164         * misc/Makefile (CFLAGS-mntent_r.c): Define.
1165         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
1166         (CFLAGS-putspent.c): Define.
1167         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
1168         (CFLAGS-putgrent.c): Define.
1169         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
1170         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1171
1172         * elf/dl-load.c (lose): Use noinline attribute instead of silly
1173         alloca to prevent inlining.
1174         * elf/dl-runtime.c (fixup): Likewise.
1175         (profile_fixup): Likewise.
1176
1177         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
1178         Initialize width correctly.
1179
1180 2004-02-07  Andreas Jaeger  <aj@suse.de>
1181
1182         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
1183         lvalue.
1184         (internal_ucs4le_loop_single): Likewise.
1185         (ucs4_internal_loop): Likewise.
1186         (BODY): Likewise.
1187         (internal_ucs4_loop_single): Likewise.
1188         * iconvdata/iso8859-1.c (BODY): Likewise.
1189         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
1190         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
1191         * iconvdata/gb18030.c (BODY): Likewise.
1192         * iconvdata/armscii-8.c (BODY): Likewise.
1193         * stdlib/msort.c (msort_with_tmp): Likewise.
1194
1195         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
1196         as lvalue.
1197
1198 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
1199
1200         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
1201         weak extern.
1202         (__elf_machine_runtime_setup): Invalidate the instruction cache over
1203         the whole range of the PLT.
1204
1205 2004-02-06  Andreas Schwab  <schwab@suse.de>
1206
1207         * posix/regcomp.c (build_range_exp): Fix off-by-one.
1208         (parse_bracket_exp): Likewise.
1209
1210 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
1211
1212         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
1213         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
1214
1215 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
1216
1217         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
1218         (re_search_internal): Pass new parameter to check_matching.
1219         (check_matching): Unless a parenthesized group is found at the
1220         beginning of the regexp, advance P_MATCH_FIRST until we entered
1221         a state different from the initial state.
1222
1223 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
1224
1225         * math/libm-test.inc (lround_test): Add new test.
1226         (llround_test): Likewise.
1227         (lrint_test): Likewise.
1228         (llrint_test): Likewise.
1229         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
1230         with result taking up 20 bits.
1231         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
1232         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
1233         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
1234         case with result taking up 31 bits.
1235         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
1236
1237         * po/nl.po: Update from translation team.
1238
1239 2004-01-30  Andreas Schwab  <schwab@suse.de>
1240
1241         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
1242         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
1243         SEGV_PSTKOVF): Remove underscore prefix from definition.
1244
1245 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
1246
1247         Merge regex changes in gawk.
1248         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
1249         of collation elements.
1250         * posix/regex.c: Include limits.h.
1251         * posix/regex.h: Document REG_ECOLLATE correctly.
1252         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
1253
1254 2004-01-24  Andreas Jaeger  <aj@suse.de>
1255
1256         * malloc/obstack.h: Import gnulib version.
1257         * malloc/obstack.c: Likewise.
1258
1259 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
1260
1261         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
1262         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
1263         increment dl_load_adds.
1264         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
1265         with equivalent GL(dl_load_adds - GL(dl_nloaded).
1266         (dl_iterate_phdr): Likewise.
1267         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
1268         * elf/dl-support.c: Remove global variable _dl_load_subs.
1269         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
1270         _dl_load_subs member.
1271
1272 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
1273
1274         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
1275         (_dl_start): And neither here.
1276         (dl_main): Set GL(dl_loaded)->l_relro_* and
1277         GL(dl_rtld_map)->l_relro_*.
1278
1279 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
1280
1281         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
1282         _dl_load_adds and _dl_load_subs.
1283         * elf/dl-support.c (_dl_load_adds): New variable.
1284         (_dl_load_subs): Likewise.
1285         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
1286         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
1287         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
1288         dlpi_subs.
1289         * include/link.h: Likewise.
1290         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
1291         and dlpi_subs members.
1292         (dl_iterate_phdr): Likewise.
1293         * elf/tst-dlmodcount.c: New file.
1294         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
1295         (tests): If build-shared, mention tst-dlmodcount.
1296         ($(objpfx)tst-dlmodcount): If build-shared, build and
1297         run tst-dlmodcount.
1298
1299 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
1300
1301         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
1302         into...
1303         (_dl_protect_relro): New routine.
1304         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
1305         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
1306         from bootstrap_map.
1307         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
1308         Call _dl_protect_relro for libraries if prelinking.
1309
1310 2004-01-23  Richard Henderson  <rth@redhat.com>
1311
1312         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
1313         * sysdeps/alpha/fpu/Versions (libm): Likewise.
1314         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
1315         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
1316
1317 2004-01-22  Andreas Jaeger  <aj@suse.de>
1318
1319         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
1320         avoid warnings for builtin function log2.
1321
1322         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
1323         information.
1324
1325 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
1326
1327         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
1328         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
1329         Patch by Davide Libenzi.
1330
1331         * sysdeps/unix/sysv/linux/kernel-features.h: Define
1332         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
1333
1334         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
1335
1336         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
1337         instead of loff_t.  Include <fcntl.h>.
1338         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
1339         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
1340         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
1341         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
1342         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
1343         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
1344         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
1345         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
1346         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
1347         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
1348         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
1349         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
1350
1351         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
1352
1353         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
1354
1355 2003-12-31  Bruno Haible  <bruno@clisp.org>
1356
1357         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
1358         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
1359         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
1360         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
1361         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
1362         0x00 0x20. Don't map U+2500..U+25E3.
1363
1364 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
1365
1366         * posix/regexec.c (get_subexp): Remove bkref_str variable.
1367         Extend buffers if needed before comparisons.
1368         (get_subexp_sub): Handle clean_state_log_if_needed failure.
1369
1370 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
1371
1372         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
1373         atomic_decrement.  Patch by Davin McCall.
1374
1375 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
1376
1377         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
1378         (__sim_disabled_exceptions, __sim_round_mode): Declare with
1379         hidden data and nocommon.
1380         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
1381         (__sim_disabled_exceptions, __sim_round_mode): Use
1382         libc_hidden_proto.
1383         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
1384         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
1385
1386 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
1387
1388         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
1389         PT_IA_64_HP_STACK.
1390
1391 2004-01-16  Richard Henderson  <rth@redhat.com>
1392
1393         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
1394         (__libc_enable_secure_internal): Likewise.
1395
1396         * elf/dl-load.c: Don't declare __libc_stack_end.
1397         * sysdeps/generic/libc-start.c: Likewise.
1398         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
1399         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
1400         * sysdeps/generic/backtrace.c: Likewise.
1401
1402 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1403
1404         * Versions.def: Add GLIBC_2.3.4.
1405
1406 2004-01-15  Richard Henderson  <rth@redhat.com>
1407
1408         * sysdeps/unix/alpha/sysdep.h: Revert last change.
1409
1410 2004-01-15  Richard Henderson  <rth@redhat.com>
1411
1412         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
1413
1414         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
1415         !samegp relocation.
1416
1417 2004-01-15  Richard Henderson  <rth@redhat.com>
1418
1419         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
1420         ucontext-offsets.sym.
1421         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
1422         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
1423         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
1424         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
1425         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
1426
1427 2004-01-15  Richard Henderson  <rth@redhat.com>
1428
1429         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
1430         __syscall_, move nop inside, adjust users by +4.
1431
1432 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1433
1434         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
1435         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
1436         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
1437         symbols.
1438         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
1439         gen-as-const-headers.
1440         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
1441         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
1442         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
1443         * sysdeps/unix/sysv/linux/kernel-features.h
1444         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
1445         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
1446         Declare mcontext_t inline and include altivec state for 64-bit.
1447         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1448         versions for setcontext, getcontext, and swapcontext.
1449
1450         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
1451         versions for setcontext, getcontext, swapcontext, and makecontext.
1452         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
1453         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1454         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
1455         Compatible with GLIBC_2.3.3 release.
1456         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
1457         (__makecontext): Use parm save area instead of compiler_dw to hold
1458         context pointer.
1459         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
1460         (__setcontext):  Upgrade to restore Altivec regs and version
1461         GLIBC_2_3_4.
1462         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
1463         Compatible with GLIBC_2.3.3 release.
1464         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
1465         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1466         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
1467         Compatible with GLIBC_2.3.3 release.
1468         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
1469         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
1470
1471 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
1472
1473         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
1474         versions for setcontext, getcontext, swapcontext, and makecontext.
1475         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1476         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
1477         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
1478         Compatible with GLIBC_2.3.3 release.
1479         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
1480         (__makecontext): Upgrade to align for Altivec regs and version
1481         GLIBC_2_3_4.
1482         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
1483         Compatible with GLIBC_2.3.3 release.
1484         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
1485         (__setcontext):  Upgrade to restore Altivec regs and version
1486         GLIBC_2_3_4.
1487         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
1488         Compatible with GLIBC_2.3.3 release.
1489         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1490         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
1491         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
1492         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
1493         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
1494         (_UC_VSCR, _UC_VRSAVE): Define.
1495         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
1496         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
1497
1498 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1499
1500         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
1501
1502 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
1503
1504         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
1505         parameter type.
1506
1507 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
1508
1509         * elf/elf.h: Fix typo in comment.
1510
1511         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
1512         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
1513
1514         * resolv/resolv.h: Add RES_USEBSTRING.
1515         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
1516         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
1517         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
1518         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
1519         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
1520         Otherwise use the two nibble formats.
1521
1522 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1523
1524         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
1525         * config.h.in: Add entry for HAVE_Z_RELRO.
1526         * include/libc-symbols.h: Define attribute_relro.
1527         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
1528         max_capstrlen, and max_dirnamelen definitions.
1529         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
1530         load_time, start_time, library_path, preloadlist, version_info,
1531         any_debug.
1532         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
1533         it to print_statistics.  Change print_statistics accordingly.
1534         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
1535         attribute_relro instead of explicitly assigning variable to the
1536         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
1537         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
1538         _dl_argv, _dl_argv_internal with attribute_relro.
1539
1540 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
1541
1542         * Makerules (gen-as-const): Don't silently continue on failure.
1543
1544 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
1545
1546         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1547         rtld_hidden_data_def.
1548
1549 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
1550
1551         * libio/libio.h: Add const to function tables types.
1552         * libio/libioP.h: Likewise.
1553         * login/utmp-private.h: Likewise.
1554         * libio/fileops.c: Add const to jump table variable definition.
1555         * libio/genops.c: Likewise.
1556         * libio/iofopncook.c: Likewise.
1557         * libio/iopopen.c: Likewise.
1558         * libio/memstream.c: Likewise.
1559         * libio/obprintf.c: Likewise.
1560         * libio/oldfileops.c: Likewise.
1561         * libio/oldiopopen.c: Likewise.
1562         * libio/strops.c: Likewise.
1563         * libio/vsnprintf.c: Likewise.
1564         * libio/vswprintf.c: Likewise.
1565         * libio/wfileops.c: Likewise.
1566         * libio/wstrops.c: Likewise.
1567         * login/getutent_r.c: Likewise.
1568         * login/getutid_r.c Likewise.
1569         * login/getutline_r.c: Likewise.
1570         * sysdeps/generic/utmp_file.c: Likewise.
1571
1572 2004-01-09  Bruno Haible  <bruno@clisp.org>
1573
1574         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
1575         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
1576         (_nl_load_domain): Treat major revision 1 like major revision 0.
1577
1578 2004-01-11  Bruno Haible  <bruno@clisp.org>
1579
1580         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
1581         width or precision has been seen.
1582
1583 2004-01-08  Bruno Haible  <bruno@clisp.org>
1584
1585         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
1586         dependent segment not known to this version of the library, ignore
1587         the string pair instead of crashing.
1588
1589 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1590
1591         * configure.in: Rewrite test to give gcc to clean up after itself.
1592         Patch by Greg Schafer.
1593
1594         * posix/regex.c: Support crappy compilers and platforms which have
1595         problems with alloca.
1596         * posix/regex_internal.h: Likewise.
1597         Patch by Paolo Bonzini.
1598
1599 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
1600
1601         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
1602         Drop code to support this, it is never true.
1603         (build_range_exp) [!_LIBC]: Do not create a range
1604         in MBCSET for a single-byte character set.
1605         (build_range_exp) [_LIBC]: Do not create a range
1606         in MBCSET for a single-byte character set without
1607         collation elements.
1608         (init_dfa): Do not conditionalize on _LIBC, it
1609         just makes the code less clear.
1610         (parse_bracket_exp): Use NON_MATCH variable in
1611         addition to "mbcset->non_match", not as an
1612         alternative.
1613         (build_charclass_op): rename NOT parameter to
1614         NON_MATCH, use it instead of declaring a variable.
1615         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
1616         if the character set is single-byte.
1617
1618 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
1619
1620         * posix/regcomp.c (peek_token_bracket): Check remaining
1621         string length before re_string_peek_byte (x, 1).
1622         (parse_bracket_symbol): Likewise.
1623         * posix/regex_internal.h (re_string_is_single_byte_char): Return
1624         true at last byte in the string.
1625         * posix/bug-regex22.c (main): Add new test.
1626
1627 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1628
1629         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
1630         .data.rel.ro.
1631
1632         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
1633
1634         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
1635         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
1636         rtld_hidden_def and move into .data.rel.ro section.
1637         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
1638         rtld_hidden_proto.
1639         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
1640         if !SHARED.
1641
1642 2004-01-13  Richard Henderson  <rth@redhat.com>
1643
1644         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
1645
1646 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1647
1648         * sysdeps/unix/sysv/linux/dl-execstack.c
1649         (_dl_make_stack_executable): Move common code in front.  Use
1650         __builtin_expect.
1651
1652         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
1653         challenge for caller.
1654         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
1655         member in rtld_global appropriately.
1656         * elf/dl-support.c: Likewise.
1657         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
1658         Pass it on to the changed function.
1659         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
1660
1661 2004-01-13  Richard Henderson  <rth@redhat.com>
1662
1663         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
1664         Cast old up to uint64_t before back down to inner width.
1665         (__arch_compare_and_exchange_xxx_16_int): Likewise.
1666         (__arch_compare_and_exchange_xxx_32_int): Likewise.
1667         (__arch_compare_and_exchange_xxx_64_int): Likewise.
1668         (__arch_compare_and_exchange_val_8_int): Cast result to
1669         the type of the memory.
1670         (__arch_compare_and_exchange_val_16_int): Likewise.
1671         (__arch_compare_and_exchange_val_32_int): Likewise.
1672         (__arch_compare_and_exchange_val_64_int): Likewise.
1673         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
1674         (atomic_compare_and_exchange_bool_rel): Likewise.
1675
1676         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
1677         based on HAVE___THREAD instead of USE_TLS.
1678
1679         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
1680         (__adjtimex_tv64): Use it.
1681
1682         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
1683         to void* rather than directly to the compatibility structure type.
1684         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
1685
1686         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
1687         Forward declare.
1688
1689 2004-01-13  Richard Henderson  <rth@redhat.com>
1690
1691         * Versions.def (libm): Add GLIBC_2.3.3.
1692         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
1693         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
1694         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
1695         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
1696         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
1697         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
1698         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
1699         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
1700         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
1701         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
1702         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
1703         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
1704         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
1705         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
1706         functions for gcc 3.3.
1707
1708         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
1709         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
1710         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
1711         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
1712         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
1713         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
1714         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
1715         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
1716         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
1717         weak_alias if the function name has been #defined.
1718
1719         * math/cabsf.c: Move ...
1720         * sysdeps/generic/cabsf.c: ... here.
1721         * math/cargf.c: Move ...
1722         * sysdeps/generic/cargf.c: ... here.
1723         * math/cimagf.c: Move ...
1724         * sysdeps/generic/cimagf.c: ... here.
1725         * math/conjf.c: Move ...
1726         * sysdeps/generic/conjf.c: ... here.
1727         * math/crealf.c: Move ...
1728         * sysdeps/generic/crealf.c: ... here.
1729
1730 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
1731
1732         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
1733         LDFLAGS.so and LDFLAGS-rtld.
1734         (+link): Add relro-LDFLAGS.
1735         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
1736         __libc_thread_subfreeres sections after .jcr section.
1737         * config.make.in: Add have-z-relro.
1738         * configure.in: Add check for -z relro option.
1739         * include/link.h (struct link_map): Add relro_addr and relro_size
1740         members.
1741         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
1742         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
1743         part of loaded segments read-only.
1744         * elf/elf.h: Define PT_GNU_RELRO.
1745         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
1746         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
1747         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
1748         relocations.
1749
1750 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
1751
1752         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
1753
1754 2004-01-11  Andreas Jaeger  <aj@suse.de>
1755
1756         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
1757
1758 2004-01-10  Andreas Jaeger  <aj@suse.de>
1759
1760         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
1761         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
1762         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1763         * sysdeps/x86_64/strcspn.S: Likewise.
1764         * sysdeps/x86_64/strspn.S: Likewise.
1765
1766 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
1767
1768         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
1769         right before syscall and cfi_startproc before PSEUDO_END.
1770         Clear %rbp in thread_start.
1771
1772 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
1773
1774         * posix/regcomp.c (regcomp): Fix comment typo.
1775         (regfree): Free preg->translate, clear buffer, allocated, fastmap
1776         and translate fields.
1777
1778         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
1779         argument to unsigned RE_TRANSLATE_TYPE.
1780         * posix/regex_internal.h (re_string_t): Change trans type to
1781         unsigned RE_TRANSLATE_TYPE.
1782         * posix/regex_internal.c (re_string_construct_common): Cast
1783         trans to unsigned RE_TRANSLATE_TYPE.
1784         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
1785         path if pstr->trans.  Never translate the character through
1786         pstr->trans.
1787         * posix/Makefile (tests): Add bug-regex22.
1788         (bug-regex22-ENV): Set.
1789         * posix/bug-regex22.c: New test.
1790
1791 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
1792
1793         * posix/regex_internal.c (re_node_set_add_intersect,
1794         re_node_set_merge): Rewritten.
1795         (re_node_set_insert, re_node_set_remove_at):
1796         Avoid memmove, we know what direction we should copy and that we
1797         are copying 32-bit words.
1798         (re_node_set_compare): Iterate backwards.
1799
1800 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1801
1802         * time/mktime.c (verify): New macro.
1803         (time_t_is_integer, twos_complement_arithmetic,
1804         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
1805         C99_integer_division): Document these longstanding assumptions in the
1806         code, and verify them at compile-time.
1807
1808 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1809
1810         * posix/regex_internal.h (re_match_context_t): Add dfa member.
1811         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
1812         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
1813         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
1814         sift_states_backward, update_cur_sifted_state, check_dst_limits,
1815         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
1816         check_subexp_matching_top, transit_state_sb, transit_state_mb,
1817         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
1818         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
1819         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
1820         (re_search_internal): Initialize mctx.dfa.
1821
1822         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
1823
1824         * posix/regex_internal.h (re_dfa_t): Add syntax field.
1825         * posix/regcomp.c (parse): Initialize dfa->syntax.
1826         * posix/regexec.c (acquire_init_state_context,
1827         prune_impossible_nodes, check_matching, check_halt_state_context,
1828         proceed_next_node, sift_states_iter_mb, sift_states_backward,
1829         update_cur_sifted_state, sift_states_bkref, transit_state,
1830         transit_state_sb, transit_state_mb, transit_state_bkref,
1831         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
1832         build_trtable): Remove preg argument, add dfa argument instead
1833         and remove dfa = preg->buffer initialization in the body.
1834         Adjust all callers.
1835         (check_node_accept_bytes, group_nodes_into_DFAstates,
1836         check_node_accept): Likewise.  Use dfa->syntax instead of
1837         preg->syntax.
1838         (check_arrival_add_next_nodes): Remove preg argument.
1839
1840         * posix/regex_internal.h (re_match_context_t): Make input
1841         re_string_t instead of a pointer to it.
1842         * posix/regex_internal.c (re_string_construct_common): Don't clear
1843         pstr here...
1844         (re_string_construct): ... but only here.
1845         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
1846         initialize fields to zero.
1847         (re_search_internal): Move input into mctx.input.
1848         (acquire_init_state_context, check_matching,
1849         check_halt_state_context, proceed_next_node,
1850         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
1851         transit_state, transit_state_sb, transit_state_mb,
1852         transit_state_bkref, get_subexp, check_arrival,
1853         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
1854         Change mctx->input into &mctx->input and mctx->input->field into
1855         mctx->input.field.
1856
1857 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
1858             Paolo Bonzini  <bonzini@gnu.org>
1859
1860         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
1861         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
1862         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
1863         (re_string_context_at, re_string_reconstruct): Remove last argument.
1864         * posix/regex_internal.c (re_string_allocate): Initialize
1865         pstr->word_char and pstr->word_ops_used.
1866         (re_string_context_at): Remove newline_anchor argument.
1867         Use input->newline_anchor instead, swap && conditions.
1868         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
1869         Use input->word_char bitmap instead of IS_WORD_CHAR.
1870         (re_string_reconstruct): Likewise.
1871         Adjust re_string_context_at caller.
1872         * posix/regexec.c (acquire_init_state_context,
1873         check_halt_state_context, transit_state, transit_state_sb,
1874         transit_state_mb, transit_state_bkref, check_arrival,
1875         check_node_accept): Adjust re_string_context_at and
1876         re_string_reconstruct callers.
1877         (re_search_internal): Likewise.  Set input.newline_anchor.
1878         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
1879         * posix/regcomp.c (init_word_char): Change return type to void.
1880         Set dfa->word_ops_used.
1881         (free_dfa_content): Don't free dfa->word_char.
1882         (parse_expression): Remove error handling for init_word_char.
1883
1884 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
1885
1886         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
1887         bitfield.
1888
1889         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
1890
1891 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
1892
1893         * posix/getconf.c: Update copyright year.
1894         * nss/getent.c: Likewise.
1895         * nscd/nscd_nischeck.c: Likewise.
1896         * iconv/iconvconfig.c: Likewise.
1897         * iconv/iconv_prog.c: Likewise.
1898         * elf/ldconfig.c: Likewise.
1899         * catgets/gencat.c: Likewise.
1900         * csu/version.c: Likewise.
1901         * elf/ldd.bash.in: Likewise.
1902         * elf/sprof.c (print_version): Likewise.
1903         * locale/programs/locale.c: Likewise.
1904         * locale/programs/localedef.c: Likewise.
1905         * nscd/nscd.c (print_version): Likewise.
1906         * debug/xtrace.sh: Likewise.
1907         * malloc/memusage.sh: Likewise.
1908         * malloc/mtrace.pl: Likewise.
1909
1910 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
1911
1912         * stdlib/strfmon.c: Make formatting of left-justified currency
1913         values match the the POSIX standard.  When using format string
1914         "[%-14#5.4n]" to print -123.45, the result should be
1915         "[-$   123.4500 ]", not "[-$123.4500    ]".
1916
1917 2004-01-01  Andreas Jaeger  <aj@suse.de>
1918
1919         * resolv/Makefile (generated): New.
1920
1921 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
1922
1923         * CONFORMANCE: Update.
1924
1925 2003-12-30  Paul Eggert  <eggert@twinsun.com>
1926
1927         * time/mktime.c: (my_mktime_localtime_r):
1928         Remove.  All uses changed to __localtime_r.
1929         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
1930         get its implementation.
1931         Fix compile-command to allow for TIME_R_POSIX.
1932
1933         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
1934         Remove.  All uses changed to __localtime_r and __gmtime_r.
1935         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
1936         Include "time_r.h" to get their implementations.
1937
1938         * time/timegm.c: Allow use in GNU applications outside glibc.
1939         [defined HAVE_CONFIG_H]: Include <config.h>.
1940         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
1941         Define __gmtime_r, and declare __mktime_internal.
1942         (timegm): Define via a prototype, since we can safely assume C89 now.
1943
1944         * time/mktime.c (check_result): Use less-confusing report format.
1945         "long" -> "long int", as per usual GNU style.
1946         (main): Likewise.
1947         Don't loop if the iteration overflows time_t.
1948         Allow a negative step in the iteration.
1949
1950         * time/mktime.c: Assume freestanding C89 or better.
1951         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
1952         assume they're 1.
1953         (__P): Remove; not used.
1954         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
1955         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
1956         Prototypes use const * where appropriate.
1957         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
1958         which caused the testing code to dump core on some hosts.
1959
1960 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
1961
1962         * locale/setlocale.c (setlocale): Avoid duplicating locale names
1963         if we can reuse old strings.
1964
1965         * inet/rcmd.c: Provide better error message in case of unknown
1966         host.  Remove USE_IN_LIBIO.
1967
1968         * nscd/nscd.init: Updated version, more conforming with current
1969         init file standards.
1970
1971         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
1972         /var/run/nscd directory.
1973         (_PATH_NSCDSOCKET): Likewise.
1974
1975         * test-skeleton.c (timeout_handler): Fix error message.
1976
1977         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
1978         CNT == 0.
1979
1980 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
1981
1982         * posix/regexec.c (get_subexp): Only set bkref_str after the first
1983         loop, use buf + bkref_str_off in the loop instead.
1984         * posix/bug-regex11.c (tests): Add 3 new tests.
1985
1986         * posix/regexec.c (clean_state_log_if_need): Rename to...
1987         (clean_state_log_if_needed): ...this.
1988         (transit_state_mb, get_subexp_sub): Adjust callers.
1989
1990         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
1991         failed.  Reported by Steve Grubb.
1992
1993 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
1994
1995         * elf/elf.h: Add a few definitions from Solaris 9.
1996
1997 2003-12-29  Andreas Schwab  <schwab@suse.de>
1998
1999         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
2000         $(fno_unit_at_a_time) to avoid reordering assembler output.
2001
2002 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
2003
2004         * posix/regexec.c (re_copy_regs): Revert comment change.
2005         Avoid memory leak if realloc fails.
2006         (proceed_next_node): Return -2 if re_node_set_insert fails.
2007         Return -2 if push_fail_stack fails.
2008         (push_fail_stack): Change fs->alloc only after successful realloc.
2009         (pop_fail_stack): Formatting.
2010         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
2011         (check_arrival_add_next_nodes): Merge identical statements
2012         from if branches.
2013
2014         * signal/Makefile (tests): Add tst-raise.
2015         * signal/tst-raise.c: New test.
2016
2017 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
2018
2019         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
2020
2021         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
2022         (push_fail_stack): Add missing check for failed memory allocation.
2023
2024         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
2025         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
2026         _IO_putwc_unlocked.
2027
2028 2003-12-28  Andreas Jaeger  <aj@suse.de>
2029
2030         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
2031         overflow for 0 as argument. Raise Invalid exception for negative args.
2032         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
2033         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
2034         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
2035         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
2036         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
2037         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
2038         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
2039         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
2040         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
2041         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
2042         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
2043
2044         * math/libm-test.inc (yn_test): Expect invalid exception for
2045         negative arguments.
2046         (y0_test): Likewise.
2047         (y1_test): Likewise.
2048
2049         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
2050         execptions for exp(NaN).
2051
2052 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
2053
2054         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
2055         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
2056         among the tokens, rather than among the epsilon-transiting nodes.
2057         (re_token_t): Add the opt_subexp flag.
2058         * posix/regcomp.c (optimize_utf8, calc_first,
2059         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
2060         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
2061         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
2062         OP_DUP_ASTERISK and marking optional subexpressions
2063         as such using mark_opt_subexp.
2064         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
2065         and pass it to update_regs.
2066         (update_regs): Use the PREV_INDEX_MATCH parameter, together
2067         with the opt_subexp flag, in order to discard a final empty
2068         match of a repeated subexpression.
2069         * posix/BOOST.tests: Adjust test vectors.
2070         * posix/PCRE.tests: Likewise.
2071         * posix/rxspencer/tests: Likewise.
2072
2073 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
2074
2075         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
2076         with omitted middle operand.
2077
2078 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
2079
2080         * posix/regcomp.c: Remove C99-ism.
2081         * posix/tst-rxspencer.c: Likewise.
2082         Based on a patch by Alex Davis <alex14641@yahoo.com>.
2083
2084 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
2085
2086         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
2087         (re_string_allocate, re_string_construct, re_string_reconstruct,
2088         re_string_realloc_buffers, build_wcs_buffer,
2089         build_wcs_upper_buffer, build_upper_buffer,
2090         re_string_translate_buffer, re_string_destruct,
2091         re_string_elem_size_at, re_string_char_size_at,
2092         re_string_wchar_at, re_string_context_at,
2093         re_node_set_alloc, re_node_set_init_1
2094         re_node_set_init_2, re_node_set_init_copy,
2095         re_node_set_add_intersect, re_node_set_init_union,
2096         re_node_set_merge, re_node_set_insert
2097         re_node_set_compare, re_node_set_contains
2098         re_node_set_remove_at, re_dfa_add_node,
2099         re_acquire_state, re_acquire_state_context,
2100         free_state): Add internal_function to declaration.
2101
2102         * posix/regexec.c (match_ctx_init, match_ctx_clean,
2103         match_ctx_free, match_ctx_free_subtops,
2104         match_ctx_add_entry, search_cur_bkref_entry,
2105         match_ctx_clear_flag, match_ctx_add_subtop,
2106         match_ctx_add_sublast, sift_ctx_init,
2107         re_search_internal, re_search_2_stub, re_search_stub,
2108         re_copy_regs, acquire_init_state_context,
2109         prune_impossible_nodes, check_matching,
2110         check_halt_node_context, check_halt_state_context
2111         update_regs, proceed_next_node, push_fail_stack,
2112         pop_fail_stack, set_regs, free_fail_stack_return,
2113         sift_states_iter_mb, sift_states_backward
2114         update_cur_sifted_state, add_epsilon_src_nodes,
2115         sub_epsilon_src_nodes, check_dst_limits,
2116         check_dst_limits_calc_pos, check_subexp_limits,
2117         sift_states_bkref, clean_state_log_if_need,
2118         merge_state_array, transit_state,
2119         check_subexp_matching_top, transit_state_sb,
2120         transit_state_mb, transit_state_bkref,
2121         get_subexp, get_subexp_sub, find_subexp_node,
2122         check_arrival, check_arrival_add_next_nodes,
2123         find_collation_sequence_value, check_arrival_expand_ecl,
2124         check_arrival_expand_ecl_sub, expand_bkref_cache,
2125         build_trtable, check_node_accept_bytes, extend_buffers,
2126         group_nodes_into_DFAstates, check_node_accept): Likewise.
2127
2128         * posix/regex_internal.c (re_string_construct_common,
2129         re_string_skip_chars, create_newstate_common,
2130         register_state, create_ci_newstate, create_cd_newstate,
2131         calc_state_hash): Likewise.
2132         (re_string_peek_byte_case, re_fetch_byte_case): Change
2133         declaration from ANSI to K&R.
2134
2135 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
2136
2137         * posix/regexec.c (build_trtable): Don't allocate the trtable
2138         until state->word_trtable is known.  Don't hardcode UINT_BITS
2139         iterations on each bitset item.
2140
2141 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
2142
2143         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
2144         Initialize REF before passing it to _dl_lookup_symbol.
2145
2146 2003-12-21  Roland McGrath  <roland@frob.com>
2147
2148         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
2149
2150 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
2151
2152         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
2153         2003-11-24 changes.
2154         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
2155         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
2156         * posix/bug-regex19.c (tests): Add new tests.
2157
2158         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
2159
2160         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
2161         after checking syntax.  Optimize.
2162         (calc_first): Fix comment.
2163         * posix/bug-regex13.c (tests): Add new tests.
2164
2165 2003-12-21  Roland McGrath  <roland@redhat.com>
2166
2167         * manual/arith.texi (Parsing of Integers): Typo fix.
2168
2169 2003-12-20  Roland McGrath  <roland@frob.com>
2170
2171         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
2172         add missing dereference of IFREQS before counting loop.
2173
2174 2003-12-21  Andreas Schwab  <schwab@suse.de>
2175
2176         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
2177         constraints.
2178
2179 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
2180
2181         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
2182
2183 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
2184
2185         * stdio-common/printf_fp.c: Add support to use alternative decimal
2186         digits.
2187         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
2188         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
2189
2190 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
2191
2192         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
2193         reload PIC if we need to call __syscall_error, cleanup asm.
2194
2195 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
2196
2197         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
2198         FE_ALL_EXCEPT before complimenting.
2199         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
2200         and gcc '+r' constraint.
2201         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
2202         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
2203         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
2204         exception bits, OR with envp, pass to fesetenv.
2205         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
2206         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
2207         triggered by M_PI/69.69 converted to single precision.
2208         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
2209         bits not raised exception bits.
2210
2211         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
2212         correct build strings.
2213         * sysdeps/hppa/dl-fptr.h: New file.
2214         * sysdeps/hppa/dl-fptr.c: Removed.
2215         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
2216         remove const qualifier for map.
2217         (_dl_function_address): Removed.
2218         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
2219         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
2220         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
2221         DL_DT_FINI_ADDRESS use the previous two macros.
2222
2223 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
2224
2225         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
2226         (tr_memalignhook): New function.
2227         (mtrace): Register tr_memalignhook.
2228         (muntrace): Deregister tr_memalignhook.
2229         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
2230         call it directly instead of memalign_internal.
2231
2232 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
2233
2234         * misc/mntent_r.c: Change encoding to match recently changed decoder.
2235         Patch by Alexander Achenbach <xela@slit.de>.
2236
2237 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
2238
2239         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
2240         vrregset_t.
2241
2242 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
2243
2244         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
2245         conditional to include typedef elf_vrreg_t.
2246
2247 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
2248
2249         * posix/regexec.c (re_search_internal): Limit search to the
2250         beginning of the buffer if the initial states are empty for
2251         contexts that do not include CONTEXT_BEGBUF or, if
2252         !preg->newline_anchor, that do not include any one of
2253         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
2254
2255 2003-12-17  Andreas Jaeger  <aj@suse.de>
2256
2257         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
2258         Kevin Pedretti <pedretti@ieee.org>.
2259
2260 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
2261
2262         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
2263         removes the visibility attributes which might be defined earlier
2264         for some gcc versions.  Instead spell out what strong_alias does
2265         plus the visibility.
2266
2267 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
2268
2269         * posix/regex_internal.h: Make sure the regex code compile
2270         with non-GCC compilers by hiding attributes.
2271
2272 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
2273             Paolo Bonzini  <bonzini@gnu.org>
2274
2275         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
2276         dests_ch items that are empty.
2277
2278 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
2279
2280         * posix/regexec.c (check_arrival): Remove duplicate test.
2281
2282 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
2283
2284         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
2285         * posix/regex_internal.c: Likewise.
2286         * posix/regexec.c: Likewise.
2287         Patch by Paolo Bonzini.
2288
2289 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
2290
2291         * posix/regex_internal.c (re_acquire_state_context):
2292         Compare the node sets after all the other comparisons.
2293
2294 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
2295
2296         * posix/regexec.c (find_subexp_node, check_arrival,
2297         check_arrival_add_next_nodes, check_arrival_expand_ecl,
2298         check_arrival_expand_ecl_sub, expand_bkref_cache):
2299         Rename the FL_OPEN parameter to TYPE, which is either
2300         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
2301
2302 2003-12-12  Andreas Jaeger  <aj@suse.de>
2303
2304         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
2305         to syscall.
2306
2307 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
2308
2309         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
2310         There might always be processes which have no vDSO.
2311         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
2312         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
2313
2314 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
2315
2316         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
2317         in the right order.
2318
2319 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
2320
2321         * rt/tst-clock.c (do_test): Print message when skipping
2322         CLOCK_PROCESS_CPUTIME_ID test.
2323
2324         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
2325         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
2326
2327 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
2328
2329         * sysdeps/ia64/elf/initfini.c: Add unwind info.
2330
2331         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
2332         attribute "unused".
2333         (elf_machine_dynamic): Mark with attributes "unused" and "const".
2334         (elf_machine_runtime_setup): Likewise.
2335
2336         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
2337         attribute "always_inline".
2338         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
2339         Likewise.
2340
2341         * configure.in: Check whether compiler has libunwind support.
2342         * config.make.in (have-cc-with-libunwind): New variable.
2343         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
2344         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
2345         mention -lunwind.
2346
2347 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
2348
2349         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
2350         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
2351         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
2352         DO_INLINE_SYSCALL.
2353
2354         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
2355         instead of DO_CALL().
2356
2357         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
2358         of DO_CALL().
2359
2360         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
2361         to take advantage of DO_CALL() macro.
2362         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
2363         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
2364
2365         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
2366         program header.  On ia64, the check failed previously because
2367         there are two program headers.
2368
2369 2003-12-10  Andreas Jaeger  <aj@suse.de>
2370             Ruediger Oertel  <ro@suse.de>
2371
2372         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
2373
2374 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
2375
2376         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
2377         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
2378         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
2379         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
2380         * sysdeps/generic/s_nexttowardf.c: Likewise.
2381         * math/Makefile (tests): Add bug-nexttoward.
2382         * math/bug-nexttoward.c: New file.
2383
2384         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
2385         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2386         * math/bug-nextafter.c (main): Add tests for overflow and negative
2387         values.
2388
2389 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
2390
2391         * math/Makefile (tests): Add bug-nextafter.
2392         * math/bug-nextafter.c: New file.
2393         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
2394         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
2395         * math/libm-test.inc (nextafter_test): Add test for overflow after
2396         +/-FLT_MAX etc.
2397
2398 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
2399
2400         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
2401         of fenv.
2402         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
2403
2404 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
2405
2406         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
2407         statements.
2408         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
2409         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
2410         (END): Add cfi_endproc directive.
2411         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
2412         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
2413         cfi_startproc and cfi_endproc directive.
2414         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
2415         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
2416         * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
2417         * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
2418         * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2419         Likewise.
2420         * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
2421         Likewise.
2422         * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
2423         * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
2424         * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
2425         * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
2426         * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
2427         * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
2428         * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
2429         * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
2430         * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
2431         Likewise.
2432         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
2433         Likewise.
2434         * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
2435         directives. Move thread_start out of ENTRY/PSEUDO_END block to
2436         make backchain terminate.
2437         * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
2438
2439         * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
2440         (unwind_backtrace, unwind_getip): New variables.
2441         (init, __backchain_backtrace, backtrace_helper): New functions.
2442         (__backtrace): Use unwind info for backtrace instead of backchain
2443         walking if the unwind functions can be found.
2444         * sysdeps/s390/s390-64/backtrace.c: Likewise.
2445
2446         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
2447
2448         * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
2449         (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
2450         (elf_prstatus32, elf_prpsinfo32): New structures.
2451         (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
2452
2453         * scripts/data/c++-types-s390-linux-gnu.data: New file.
2454         * scripts/data/c++-types-s390x-linux-gnu.data: New file.
2455
2456 2003-11-30  Petter Reinholdtsen  <pere@hungry.com>
2457
2458         * stdlib/strfmon.c: Correct formatting of international currency
2459         values.  The international currency formatting should prefer the
2460         int_* values if they are set for a locale, and use the domestic
2461         values if the int_* values are unset.
2462
2463 2003-12-03  Jakub Jelinek  <jakub@redhat.com>
2464
2465         * posix/Makefile (distribute): Add BOOST.tests.
2466         (tests): Add tst-boost, depend on tst-boost-mem.
2467         (generated): Add tst-boost-mem and tst-boost.mtrace.
2468         (tst-boost-ARGS, tst-boost-ENV): Set.
2469         ($(objpfx)tst-boost-mem): New.
2470         * posix/tst-boost.c: New test.
2471         * posix/BOOST.tests: New file.
2472
2473         * posix/Makefile (distribute): Add PCRE.tests.
2474         (tests): Add tst-pcre, depend on tst-pcre-mem.
2475         (generated): Add tst-pcre-mem and tst-pcre.mtrace.
2476         (tst-pcre-ARGS, tst-pcre-ENV): Set.
2477         ($(objpfx)tst-pcre-mem): New.
2478         * posix/tst-pcre.c: New test.
2479         * posix/PCRE.tests: New file.
2480
2481 2003-12-02  Jakub Jelinek  <jakub@redhat.com>
2482
2483         * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
2484
2485         * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
2486         * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
2487
2488 2003-12-03  Ulrich Drepper  <drepper@redhat.com>
2489
2490         * locale/programs/locarchive.c (enlarge_archive): Print size info
2491         only in verbose mode.
2492
2493         * locale/iso-3166.def: Three letter code of Romania changed.
2494
2495 2003-12-02  Roland McGrath  <roland@redhat.com>
2496
2497         * scripts/config.sub: Update from master, timestamp='2003-10-20'.
2498         * scripts/config.guess: Update from master, timestamp='2003-10-20'.
2499
2500 2003-11-30  Andreas Jaeger  <aj@suse.de>
2501
2502         * config.make.in (fno-unit-at-a-time): Define.
2503
2504         * configure.in: Add test for -fno-unit-at-a-time.
2505         Fix text for -fpie.
2506
2507         * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
2508         * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
2509
2510 2003-12-01  Automatic
2511
2512         * version.h (VERSION): Bump to 2.3.3.
2513
2514 2003-11-30  Andreas Jaeger  <aj@suse.de>
2515
2516         * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
2517         decrease stack usage.
2518
2519 2003-11-30  Andreas Schwab  <schwab@suse.de>
2520
2521         * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
2522         (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
2523
2524 2003-11-29  Ulrich Drepper  <drepper@redhat.com>
2525
2526         * misc/mntent_r.c (decode_name): Be compatible with util-linux and
2527         recognize \134 as well.
2528
2529 2003-10-09  H.J. Lu  <hongjiu.lu@intel.com>
2530
2531         * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
2532
2533 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2534
2535         * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
2536         <asm/fpu.h>.
2537         (struct ia64_fpreg): New definition.
2538
2539         * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
2540         <asm/elf.h>.
2541         (ELF_NGREG): New #define.
2542         (ELF_NFPREG): Likewise.
2543         (elf_greg_t): New type.
2544         (elf_gregset_t): Likewise.
2545         (elf_fpreg_t): Likewise.
2546         (elf_fpregset_t): Likewise.
2547
2548 2003-10-08  H.J. Lu  <hongjiu.lu@intel.com>
2549
2550         * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
2551         <sys/ucontext.h>.
2552         (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
2553         (pt_all_user_regs): New type.
2554
2555 2003-10-10  Simon Josefsson  <jas@extundo.com>
2556
2557         * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
2558         strchrnul.h, strndup.h (from gnulib).
2559         * argp/argp-parse.c: Add alloca.h include snippet verbatim from
2560         Autoconf manual.
2561         * argp/argp-help.c: Replace alloca.h include snipper with verbatim
2562         Autoconf manual version.
2563         * argp/argp.h: Map __restrict to restrict or empty string when
2564         necessary, copied verbatim from posix/regex.h.
2565
2566 2003-10-09  Steven Munroe  <sjmunroe@us.ibm.com>
2567
2568         * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
2569         addition to c++-types-$(base-machine)-$(config-os).data.
2570         * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
2571         * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
2572
2573 2003-11-28  Ulrich Drepper  <drepper@redhat.com>
2574
2575         * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
2576         of newline.
2577         * manual/sysinfo.texi (mtab): Adjust description accordingly.
2578         Reported by Andries.Brouwer@cwi.nl.
2579
2580         * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
2581         to compensate other setup.
2582
2583 2003-11-27  Andreas Jaeger  <aj@suse.de>
2584
2585         * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
2586
2587         * math/libm-test.inc (atan2_test): Add test that run infinitly.
2588         Reported by "Willus" <etc231etc231@willus.com>.
2589
2590 2003-11-27  Michael Matz  <matz@suse.de>
2591
2592         * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
2593         with wrong types.
2594
2595 2003-11-28  Jakub Jelinek  <jakub@redhat.com>
2596
2597         * posix/regexec.c (acquire_init_state_context): Make inline.
2598         Add always_inline attribute.
2599         (check_matching): Add BE macro.  Move if (cur_state->has_backref)
2600         into if (dfa->nbackref).
2601         (sift_states_backward): Fix comment.
2602         (transit_state): Add BE macro.  Move if (next_state->has_backref)
2603         into if (dfa->nbackref && next_state).  Don't check for next_state
2604         != NULL twice.
2605         * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
2606         for ANCHOR.
2607         (parse_expression): Only call init_word_char if word context will be
2608         needed.
2609
2610         * posix/bug-regex11.c (tests): Add new tests.
2611
2612         * posix/tst-regex.c: Include getopt.h.
2613         (timing): New variable.
2614         (main): Set timing to 1 if --timing argument is present.
2615         Add 2 new tests.
2616         (run_test, run_test_backwards): Handle timing.
2617
2618 2003-11-27  Jakub Jelinek  <jakub@redhat.com>
2619
2620         * posix/regex_internal.h (re_string_t): Remove mbs_case field.
2621         Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
2622         offsets_needed fields.  Change icase, is_utf8 and map_notascii
2623         type from int bitfield to unsigned char.
2624         (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
2625         (build_wcs_upper_buffer): Change prototype to return int.
2626         (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
2627         defines, add prototypes.
2628         * posix/regex_internal.c (re_string_allocate): Don't initialize
2629         stop here.  Don't initialize mbs_case.  Set valid_raw_len.
2630         Use mbs_allocated instead of MBS_* macros.
2631         (re_string_construct): Don't initialize stop and valid_len here.
2632         Don't initialize mbs_case.  Use mbs_allocated instead of MBS_*
2633         macros.  Reallocate buffers if build_wcs_upper_buffer converted
2634         too few bytes.  Set valid_len to bufs_len only for single byte
2635         no translation and set in that case valid_raw_len as well.
2636         (re_string_realloc_buffers): Reallocate offsets if not NULL.
2637         Use mbs_allocated instead of MBS_ALLOCATED.  Don't reallocate
2638         mbs_case.
2639         (re_string_construct_common): Initialize raw_len, mbs_allocated,
2640         stop and raw_stop.
2641         (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
2642         after it.  Set valid_raw_len.  Don't set mbs_case.
2643         (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
2644         Only use the fast path if !pstr->offsets_needed.  Apply pstr->trans
2645         before mbrtowc instead of after it.  If upper case character
2646         uses different number of bytes than lower case, goto to the
2647         slow path.  Don't call towupper unnecessarily twice.  Set
2648         valid_raw_len as well.  Handle in the slow path the case if
2649         lower and upper case use different number of characters.
2650         Don't set mbs_case.
2651         (re_string_skip_chars): Use valid_raw_len instead of valid_len.
2652         (build_upper_buffer): Don't set mbs_case.  Add BE macro.  Set
2653         valid_raw_len.
2654         (re_string_translate_buffer): Set mbs instead of mbs_case.  Set
2655         valid_raw_len.
2656         (re_string_reconstruct): Use raw_len/raw_stop to initialize
2657         len/stop.  Clear valid_raw_len and offsets_needed when clearing
2658         valid_len.  Use mbs_allocated instead of MBS_* macros.
2659         Check original offset against valid_raw_len instead of valid_len.
2660         Remove mbs_case handling.  Adjust valid_raw_len together with
2661         valid_len.  If is_utf8 and looking for tip context, apply
2662         pstr->trans first.  If buffers start with partial multi-byte
2663         character, initialize mbs array as well if mbs_allocated.
2664         Check return value of build_wcs_upper_buffer.
2665         (re_string_peek_byte_case): New function.
2666         (re_string_fetch_byte_case): New function.
2667         (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
2668         Don't free mbs_case.  Free offsets.
2669         * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
2670         if mb_cur_max == 6.
2671         * posix/regexec.c (re_search_internal): Initialize input.raw_stop
2672         as well.  Use valid_raw_len instead of valid_len when looking
2673         through fastmap.  Adjust registers through input.offsets.
2674         (extend_buffers): Allow build_wcs_upper_buffer to fail.
2675         * posix/bug-regex18.c (tests): Enable #ifdefed out tests.  Add new
2676         tests.
2677
2678 2003-11-26  Jakub Jelinek  <jakub@redhat.com>
2679
2680         * posix/regexec.c (check_subexp_limits): Only check close
2681         subexpression limitation if one is found.  Formatting.
2682         (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
2683         Formatting.
2684         * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
2685         Add new test.
2686
2687 2003-11-26  Ulrich Drepper  <drepper@redhat.com>
2688
2689         * sysdeps/unix/sysv/linux/kernel-features.h
2690         (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
2691         * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
2692         if __ASSUME_PROT_GROWSUPDOWN is defined.
2693
2694 2003-11-26  Andreas Jaeger  <aj@suse.de>
2695
2696         * sysdeps/unix/sysv/linux/dl-execstack.c
2697         (_dl_make_stack_executable): Set dl_stack_flags always for
2698         success.
2699
2700 2003-06-22  Petter Reinholdtsen  <pere@hungry.com>
2701
2702         * locale/program/ld-monetary.c: Only check the first three
2703         characters in int_curr_symbol against ISO-4217, to make the
2704         separator character used by a locale independent of the content
2705         in iso-4217.def.
2706         * locale/iso-4217.def: Remove the space character from all
2707         currency values to get the new test code in ld-monetary.c working.
2708
2709 2003-11-21  David Mosberger  <davidm@hpl.hp.com>
2710
2711         * elf/soinit.c (_fini): Put _fini() in .init_array section if
2712         HAVE_INITFINI_ARRAY is defined.
2713
2714 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2715
2716         * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
2717         Define it appropriately after last change.  Use it where __sqrtl
2718         was used.
2719
2720 2003-11-25  H.J. Lu  <hongjiu.lu@intel.com>
2721
2722         * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
2723         sqrt for gcc 3.3 and above.
2724
2725 2003-11-25  Ulrich Drepper  <drepper@redhat.com>
2726
2727         * posix/runptests.c (main): Make errors fatal.
2728         * posix/PTESTS: One test in GA135 and GA136 check functionality
2729         which seems not guaranteed.
2730
2731 2003-11-25  Jakub Jelinek  <jakub@redhat.com>
2732
2733         * posix/regexec.c (re_search_internal): If prune_impossible_nodes
2734         returned REG_NOMATCH, set match_last to -1.  Don't initialize
2735         pmatch[0] needlessly.  Fix comment.
2736         (prune_impossible_nodes): Don't segfault on NULL state_log entry.
2737         (set_regs): Fix comment.
2738         * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
2739         if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
2740         (build_charclass_op): Set has_plural_match if adding both
2741         SIMPLE_BRACKET and COMPLEX_BRACKET.
2742         * posix/bug-regex11.c (tests): Fix register values for one commented
2743         out test.  Add new tests.
2744
2745         * posix/regex_internal.c (re_string_allocate): Make sure init_len
2746         is at least dfa->mb_cur_max.
2747         (re_string_reconstruct): If is_utf8, don't fall back into
2748         re_string_skip_chars just because idx points into a middle of
2749         valid UTF-8 character.  Instead, set the wcs bytes which correspond
2750         to the partial character bytes to WEOF.
2751         * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
2752         instead of dfa->nodes_len + 1 state_log entries initially.
2753         * posix/bug-regex20.c (main): Uncomment backwards case insensitive
2754         tests.
2755
2756 2003-11-24  Jakub Jelinek  <jakub@redhat.com>
2757
2758         * posix/regex_internal.h (re_token_t): Add word_char bit.  Add
2759         comment.
2760         (re_dfa_t): Add sb_char field.
2761         (bitset_mask): New function.
2762         * posix/regcomp.c (free_dfa_content): Free sb_char.
2763         (init_dfa): Don't initialize word_char unnecessarily.
2764         Initialize sb_char.
2765         (duplicate_node): Don't duplicate !word_char CHARACTERs with
2766         NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
2767         NEXT_NOTWORD_CONSTRAINT.  Return -1 in *new_idx instead.
2768         (duplicate_node_closure): Handle clone_dest == -1 from
2769         duplicate_node.
2770         (peek_token): Initialize word_char bit.
2771         (parse_expression, parse_dup_op): Add comments.
2772         (parse_bracket_exp): Don't set bitmask bits for multi-byte char
2773         starting bytes here at the beginning.  Mask off the bits right
2774         before creating SIMPLE_BRACKET.
2775         (build_charclass_op): Likewise.
2776         * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
2777         set accept bits for single-byte characters.
2778         (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
2779         being single byte encoded and the rest multi-byte.
2780         * posix/bug-regex19.c (tests): Add new tests.
2781         (do_mb_tests): Initialize t to *test.
2782         (main): Fail even on do_mb_tests errors.
2783
2784 2003-11-23  Ulrich Drepper  <drepper@redhat.com>
2785
2786         * posix/regexec.c: Correct several memory allocation problems.
2787         Add more BE.
2788         * posix/regex_internal.c: Likewise.
2789         * posix/regcomp.c: Likewise.
2790
2791         * posix/regexec.c: Add const in a number of places.
2792         * posix/regex_internal.h: Make EPSILON_BIT a macro to help
2793         debugging.  Its value isn't important.
2794
2795 2003-11-22  Ulrich Drepper  <drepper@redhat.com>
2796
2797         * posix/PTESTS: Fix first test of GA143.
2798
2799 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2800
2801         * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
2802         isn't likely.
2803
2804         * locale/programs/charmap.c (charmap_read): If encoding is found
2805         not ASCII compatible, set enc_not_ascii_compatible.
2806         * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
2807         * locale/programs/ld-ctype.c (ctype_startup): If
2808         enc_not_ascii_compatible is set, initialize to_nonascii to 1.
2809
2810 2003-11-22  Jakub Jelinek  <jakub@redhat.com>
2811
2812         * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
2813         if !__libc_enable_secure.
2814
2815         * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
2816         field.
2817         * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
2818         (dl_main): Set GL(dl_use_load_bias) default.
2819         (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
2820         Add EXTRA_LD_ENVVARS_13.
2821         * elf/dl-support.c (_dl_use_load_bias): New variable.
2822         * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
2823         with GL(dl_use_load_bias).
2824         * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
2825         LD_USE_LOAD_BIAS.
2826         * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
2827         (EXTRA_LD_ENVVARS_LINUX): Renamed to...
2828         (EXTRA_LD_ENVVARS_13): ... this.  Remove case at the beginning.
2829         * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
2830         Don't undefine first.  Remove EXTRA_LD_ENVVARS_LINUX.
2831
2832 2003-11-21  Ulrich Drepper  <drepper@redhat.com>
2833
2834         * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
2835
2836         * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
2837         pointer.  Adjust callers.
2838
2839         * posix/regcomp.c (fetch_token): Change interface to match
2840         peek_token.  This avoids some copying and reduces code size.
2841
2842 2003-11-21  Jakub Jelinek  <jakub@redhat.com>
2843
2844         * posix/bug-regex19.c (tests): Add more tests.
2845
2846         * posix/bug-regex11.c: And one more commented out test.
2847
2848         * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
2849         tests multiple times unnecessarily.
2850
2851         * posix/bug-regex19.c (BRE, ERE): Define.
2852         (tests): Add many new tests, remove UTF-8 ones.
2853         (do_one_test, do_mb_tests): New functions.
2854         (main): Rewritten using do_one_test and do_mb_tests.
2855
2856 2003-11-20  Ulrich Drepper  <drepper@redhat.com>
2857
2858         * posix/PTESTS: Fix first test in GA143.
2859
2860 2003-11-20  Jakub Jelinek  <jakub@redhat.com>
2861
2862         * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
2863         Add word_trtable.
2864         * posix/regex_internal.c (create_newstate_common, free_state):
2865         Don't free trtable_search.
2866         * posix/regexec.c (check_matching): Remove fl_search argument.
2867         (transit_state_sb): Likewise.  #ifdef out as unused.
2868         (build_trtable): Remove fl_search argument.  Set state->word_trtable
2869         and state->trtable.  Build separate word and non-word tables if
2870         multi-byte and they differ for some character.
2871         (transit_state): Remove fl_search argument.  Don't update
2872         state->trtable here.  Handle state->word_trtable.
2873         #ifdef out unused call to transit_state_sb.
2874         (re_search_internal): Update check_matching caller.
2875         (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
2876         bitmask for multi-byte locales.
2877         * posix/bug-regex19.c (tests): Enable some commented out tests, add
2878         2 new tests.
2879         * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
2880         multi-byte.  Don't run identical multi-byte tests multiple times
2881         unnecessarily.
2882         (main): Check setlocale return value.
2883         * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
2884         (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
2885         ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
2886         here, without --utf8 argument but with MALLOC_TRACE.
2887
2888 2003-11-19  Jakub Jelinek  <jakub@redhat.com>
2889
2890         * posix/regexec.c (extend_buffers): Don't allocate
2891         twice as big state_log as needed.  Don't modify pstr->valid_len
2892         for mb_cur_max == 1 !icase !trans.
2893
2894         * posix/regcomp.c (free_bin_tree): Removed.
2895         (create_tree): Add dfa argument.  Don't call re_malloc for
2896         each tree, instead allocate from str_tree_storage.
2897         (re_dfa_add_tree_node): New function.
2898         (free_dfa_content): Handle freeing if dfa->nodes == NULL
2899         or dfa->state_table == NULL.
2900         (re_compile_internal): Call free_dfa_content if init_dfa
2901         fails.  Call free_workarea_compile, re_string_destruct
2902         and free_dfa_content for most of the other failure paths.
2903         (init_dfa): Initialize str_tree_storage_idx.
2904         Don't clear any fields on allocation failure.
2905         (free_workarea_compile): Free str_tree_storage chunks
2906         instead of free_bin_tree (dfa->str_tree).
2907         (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
2908         followed by create_tree.  Add dfa argument to remaining
2909         create_tree calls.  Remove new_idx variable.  Remove calls
2910         to free_bin_tree.
2911         (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
2912         parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
2913         (duplicate_tree): Remove calls to free_bin_tree, add dfa
2914         argument to create_tree.
2915         * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
2916         (bin_tree_storage_t): New type.
2917         (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
2918         fields.
2919         * posix/Makefile (tests): Add bug-regex21.
2920         (generated): Add bug-regex21-mem, bug-regex21.mtrace,
2921         tst-rxspencer-mem and tst-rxspencer.mtrace.
2922         (tests): Depend on $(objpfx)bug-regex21-mem
2923         and $(objpfx)tst-rxspencer-mem.
2924         (bug-regex21-ENV, tst-rxspencer-ENV): Set.
2925         ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
2926         * posix/tst-rxspencer.c (main): Add call to mtrace.
2927         Free line at the end.
2928         * posix/bug-regex21.c: New test.
2929
2930 2003-11-19  Ulrich Drepper  <drepper@redhat.com>
2931
2932         * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
2933
2934         * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
2935         fails, just use the byte, do no fancy conversions.
2936
2937         * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
2938         not ->len.
2939         (re_string_is_single_byte_char): Likewise.
2940
2941 2003-11-18  Ulrich Drepper  <drepper@redhat.com>
2942
2943         * posix/regexec.c (get_subexp): After calling get_subexp_sub
2944         reload buf and bkref_str.  Little optimization by avoiding memcmp.
2945
2946 2003-11-14  David Mosberger   <davidm@hpl.hp.com>
2947
2948         * sysdeps/unix/sysv/linux/ia64/sysdep.h
2949         (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
2950         that all existing GAS versions have a problem with .align inside
2951         a function.
2952         * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
2953         * sysdeps/ia64/memcpy.S: Likewise.
2954         * sysdeps/ia64/memset.S: Likewise.
2955         * sysdeps/ia64/memmove.S: Likewise.  Also move the jump-table to
2956         out of .text into .rodata, where it belongs.
2957
2958         * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
2959         save/restore input-arguments, because they're necessarily
2960         preserved by the kernel to support syscall-restart.
2961
2962 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
2963
2964         * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
2965         END_OF_RE_TOKEN_T and SUBEXP.  Reorder values.  Add OP_UTF8_PERIOD
2966         and EPSILON_BIT.
2967         (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
2968         (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
2969         * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
2970         Handle OP_UTF8_PERIOD.
2971         (re_string_reconstruct): Set valid_len for single byte char searching
2972         with no translation and case sensitivity.
2973         * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
2974         OP_UTF8_PERIOD.
2975         (re_compile_internal): Don't call optimize_utf8 if preg->translate
2976         != NULL.
2977         (optimize_utf8): Remove BACK_SLASH case.
2978         Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
2979         optimized.
2980         (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
2981         any bits set and COMPLEX_BRACKET is used.
2982         * posix/regexec.c (transit_state_mb): Fix comment typo.
2983         (group_nodes_into_DFAstates, check_node_accept): Handle
2984         OP_UTF8_PERIOD.
2985         (check_node_accept_bytes): Likewise.  Reorder slightly so that
2986         re_string_char_size_at and re_string_elem_size_at are called
2987         only when needed.
2988         * posix/bug-regex20.c (BRE, ERE): Define.
2989         (tests): Use them to make lines shorter.  Expect . to be
2990         optimized.  Add lots of new tests.
2991         (main): Run (ATM just case sensitive) test with backwards searching
2992         as well.
2993
2994 2003-11-18  Jakub Jelinek  <jakub@redhat.com>
2995
2996         * io/bug-ftw4.c: Include string.h.
2997         * posix/fnmatch.c (mbsinit): Remove define.
2998
2999 2003-11-17  Jakub Jelinek  <jakub@redhat.com>
3000
3001         * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
3002         well.
3003         * posix/bug-regex20.c (tests): Add new tests.  Multi-byte char
3004         followed by dup operator is expected to be optimized.
3005
3006         * posix/regexec.c (check_node_accept_bytes): Move nrules and j
3007         variables to the block where they are only used, initialize
3008         nrules only immediately before using it.
3009
3010 2003-11-15  Andreas Jaeger  <aj@suse.de>
3011
3012         * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
3013         * sysdeps/x86_64/fpu/s_truncl.S: New file.
3014         * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
3015         * sysdeps/x86_64/fpu/s_floorl.S: New file.
3016         * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
3017         * sysdeps/x86_64/fpu/e_remainderl.S: New file.
3018
3019         * math/libm-test.inc (floor_test): Test also ±0.25.
3020         (ceil_test): Test -0.25.
3021
3022 2003-11-17  Ulrich Drepper  <drepper@redhat.com>
3023
3024         * sysdeps/posix/getaddrinfo.c: Add support for destination address
3025         selection according to RFC 3484.
3026
3027 2003-11-15  Ulrich Drepper  <drepper@redhat.com>
3028
3029         * posix/regex_internal.h: Add forward declaration of re_dfa_t.
3030         Replace last two parameters of re_string_allocate and
3031         re_string_construct with pointer to DFA.
3032         (re_dfa_t): Add map_notascii field.
3033         * posix/regcomp.c (re_compile_internal): Add call of
3034         re_string_construct.
3035         (init_dfa): Initialize map_notascii.
3036         * posix/regex_internal.c: Adjust definitions of re_string_allocate
3037         and re_string_construct.
3038         Pass DFA to re_string_construct.  Adjust definition.  Initialize
3039         map_notascii field.
3040         (build_wcs_upper_buffer): If map_notascii is zero use simplified
3041         method to map ASCII values to upper case.
3042         * posix/regex.c: Include localeinfo.h.
3043         * posix/regexec.c: Adjust call of re_string_allocate.
3044
3045         * locale/langinfo.h: Add _NL_CTYPE_MAP_TO_NONASCII.
3046         * locale/localeinfo.h (LIMAGIC): Change value.
3047         * locale/categories.def. Add entry for _NL_CTYPE_MAP_TO_NONASCII.
3048         * locale/C-ctype.h: Likewise.
3049         * locale/programs/ld-ctype.c: Compute whether any mapping maps from
3050         ASCII to non-ASCII value.  Write out that value.
3051
3052         * wcsmbs/mbsinit.c: Undef mbsinit and __mbsinit.
3053         * include/wchar.h: Provide inline versions of mbsinit and __mbsinit.
3054
3055 2003-11-14  Jakub Jelinek  <jakub@redhat.com>
3056
3057         * posix/tst-rxspencer.c (check_match): @ without any following
3058         characters must match only end of string.
3059         (main): Fix filename in error message.
3060
3061 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
3062
3063         * sysdeps/ia64/dl-machine.h: Force inlining of
3064         elf_machine_runtime_setup().
3065
3066 2003-11-13  Andreas Jaeger  <aj@suse.de>
3067
3068         * math/Makefile (CFLAGS-test-float.c): Add -fno-builtin.
3069         (CFLAGS-test-double.c): Likewise.
3070         (CFLAGS-test-ldouble.c): Likewise.
3071         (CPPFLAGS-test-ifloat.c): Likewise.
3072         (CPPFLAGS-test-idouble.c): Likewise.
3073         (CPPFLAGS-test-ildoubl.c): Likewise.
3074
3075         * math/libm-test.inc (ceil_test): Test ceil (0.25).
3076
3077 2003-11-04  Ulrich Drepper  <drepper@redhat.com>
3078
3079         * sysdeps/unix/sysv/linux/ifaddrs.c: Make sure it's the kernel who
3080         sends the netlink data.
3081         * sysdeps/unix/sysv/linux/check_pf.c: Likewise.
3082
3083 2003-11-13  Jakub Jelinek  <jakub@redhat.com>
3084
3085         * posix/regcomp.c (optimize_utf8): Optimize even if SIMPLE_BRACKET
3086         with no bits set for >= 0x80 chars is seen.
3087         * posix/bug-regex20.c (tests): Add new tests.  Expect [ABC] to be
3088         optimized.
3089         (main): Run all tests with RE_ICASE as well.
3090
3091 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
3092
3093         * posix/Makefile: Add rules to build and run tst-rxspencer.
3094         (distribute): Add rxspencer/tests and rxspencer/COPYRIGHT.
3095         * posix/tst-rxspencer.c: New file.
3096         * posix/rxspencer/tests: New file.
3097         * posix/rxspencer/COPYRIGHT: New file.
3098         Patch mostly by Jakub Jelinek.
3099
3100         * posix/regcomp.c (parse_bracket_exp): Don't check for range if
3101         this is no option given the first token.
3102
3103         * posix/regcomp.c (parse_bracket_exp): Fix test for EOS after
3104         hyphen in range expression.  Return EBRACK in this case.
3105
3106         * posix/regcomp.c (parse_bracket_element): Reject hyphens unless
3107         we expect them or it's the last element in the bracket expression.
3108         Indicated by new parameter.  Adjust all callers.
3109
3110         * posix/runtests.c (run_a_test): If regcomp failed, reset last_pattern.
3111         Prettier error messages.
3112
3113         * posix/regcomp.c (parse_dup_op): Fail with REG_BADBR is first
3114         number in {,} expression is larger.
3115
3116 2003-11-13  Andreas Jaeger  <aj@suse.de>
3117
3118         * sysdeps/unix/sysv/linux/kernel-features.h (__ASSUME_TGKILL):
3119         Define appropriately for x86_64.
3120         (__ASSUME_UTIMES): Likewise.
3121         (__ASSUME_CLONE_THREAD_FLAGS): Likewise.
3122
3123         * sysdeps/x86_64/fpu/s_ceill.S: New file.
3124
3125 2003-11-13  Ulrich Drepper  <drepper@redhat.com>
3126
3127         * posix/regcomp.c (parse_expression): In BRE consecutive
3128         duplications are not allowed.
3129
3130 2003-11-12  Ulrich Drepper  <drepper@redhat.com>
3131
3132         * posix/regcomp.c (parse_bracket_exp): If end of expression is
3133         seen, return EBRACK error, not BADPAT.
3134
3135         * posix/regcomp.c (parse_expression): If token is OP_OPEN_DUP_NUM
3136         and RE_CONTEXT_INVALID_DUP syntax flag is set, fail.
3137         * posix/regex.h (RE_CONTEXT_INVALUD_OPS): New macro.
3138         (RE_SYNTAX_POSIX_BASIC): Use RE_CONTEXT_INVALUD_OPS.
3139
3140         * posix/regcomp.c (parse_sub_exp): In case of not-matching ( )
3141         return REG_EPAREN.
3142
3143         * posix/PTESTS: Cleanup.  Fix typoes.  Correct bugs in 2003.2.
3144         * posix/runptests.c (main): Handle comments.
3145         * posix/PTESTS2C.sed: Handle comments.
3146
3147 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3148
3149         * posix/regcomp.c (optimize_utf8): New function.
3150         (re_compile_fastmap_iter): Use dfa->mb_cur_max > 1 instead
3151         of !icase.
3152         (re_compile_internal): Call optimize_utf8 if not case insensitive
3153         and in UTF-8 locale.
3154         * posix/regex_internal.h: Ifdef out some prototypes if
3155         RE_NO_INTERNAL_PROTOTYPES is defined to shut up warnings.
3156         * posix/Makefile (tests): Add bug-regex20.
3157         (bug-regex20-ENV): Add LOCPATH.
3158         * posix/bug-regex20.c: New test.
3159
3160 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3161
3162         * io/ftw.c (NFTW_NEW_NAME, NFTW_OLD_NAME): Add prototypes.
3163
3164 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3165
3166         * posix/tst-regex.c (umemlen): New variable.
3167         (test_expr): Add expectedicase argument.  Test case insensitive
3168         searches as well as backwards searches (case sensitive and
3169         insensitive) too.
3170         (run_test): Add icase argument.  Use it to compute regcomp flags.
3171         (run_test_backwards): New function.
3172         (main): Cast read to size_t to avoid warning.  Set umemlen.
3173         Add expectedicase arguments to test_expr.
3174         * posix/regex_internal.c (re_string_reconstruct): If is_utf8,
3175         find previous character by walking back instead of converting
3176         all chars from beginning.
3177
3178 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3179
3180         * posix/regex_internal.h (struct re_string_t): Add is_utf8
3181         and mb_cur_max fields.
3182         (struct re_dfa_t): Likewise.  Reorder fields to make structure
3183         smaller on 64-bit arches.
3184         (re_string_allocate, re_string_construct): Add mb_cur_max and
3185         is_utf8 arguments.
3186         (re_string_char_size_at, re_string_wchar_at): Use pstr->mb_cur_max
3187         instead of MB_CUR_MAX.
3188         * posix/regcomp.c (re_compile_fastmap_iter): Use dfa->mb_cur_max
3189         instead of MB_CUR_MAX.
3190         (re_compile_internal): Pass new arguments to re_string_construct.
3191         (init_dfa): Initialize mb_cur_max and is_utf8 fields.
3192         (peek_token, peek_token_bracket): Use input->mb_cur_max instead
3193         of MB_CUR_MAX.
3194         (parse_expression, parse_bracket_exp, parse_charclass_op): Use
3195         dfa->mb_cur_max instead of MB_CUR_MAX.
3196         * posix/regex_internal.c (re_string_construct_common): Add
3197         mb_cur_max and is_utf8 arguments.  Initialize fields with them.
3198         (re_string_allocate, re_string_construct): Add mb_cur_max and
3199         is_utf8 arguments, pass them to re_string_construct_common.
3200         Use mb_cur_max instead of MB_CUR_MAX.
3201         (re_string_realloc_buffers): Use pstr->mb_cur_max instead of
3202         MB_CUR_MAX.
3203         (re_string_reconstruct): Likewise.
3204         (re_string_context_at): Use input->mb_cur_max instead of
3205         MB_CUR_MAX.
3206         (create_ci_newstate, create_cd_newstate): Use dfa->mb_cur_max
3207         instead of MB_CUR_MAX.
3208         * posix/regexec.c (re_search_internal): Likewise.
3209         Pass new arguments to re_string_allocate.
3210         (check_matching, transit_state_sb): Use dfa->mb_cur_max instead of
3211         MB_CUR_MAX.
3212         (extend_buffers): Use pstr->mb_cur_max instead of MB_CUR_MAX.
3213
3214 2003-11-12  Jakub Jelinek  <jakub@redhat.com>
3215
3216         * posix/Makefile (tests): Add bug-regex19.
3217         (bug-regex19-ENV): Add LOCPATH.
3218         * posix/bug-regex19.c: New test.
3219
3220 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
3221
3222         * posix/regcomp.c (re_compile_fastmap_iter): Handle RE_ICASE
3223         with MB_CUR_MAX > 1 locales in the fastmap.
3224
3225 2003-11-11  Jakub Jelinek  <jakub@redhat.com>
3226
3227         * posix/regex_internal.c (build_wcs_buffer): Fix comment typo.
3228         (build_wcs_upper_buffer): Likewise.  Use towupper for wchar_t instead
3229         of toupper.
3230         * posix/Makefile (tests): Add bug-regex17 and bug-regex18.
3231         (bug-regex17-ENV, bug-regex18-ENV): Add LOCPATH.
3232         * posix/bug-regex17.c: New file
3233         * posix/bug-regex18.c: New file.
3234
3235 2003-10-08  Thorsten Kukuk  <kukuk@suse.de>
3236
3237         * sysdeps/unix/sysv/linux/sparc/sparc64/sysdep.h (pread, pwrite):
3238         Define __NR_pread/__NR_pwrite if not done in kernel headers
3239
3240 2003-11-11  Roland McGrath  <roland@redhat.com>
3241
3242         * manual/xtract-typefun.awk: Swallow [(){}*] from function names.
3243
3244         * manual/Makefile (info): Don't depend on dir-add.info.
3245         (libc.dvi libc.pdf libc.info): Depend on dir-add.texi.
3246         (dir-add.info): Target removed, replaced with ...
3247         (dir-add.texi): New target.
3248         (distribute): Add it.
3249         (install): Remove variant with --section arguments.
3250         Let the @dircategory directives do their work.
3251         (mostlyclean): Don't remove dir-add.info here.
3252         (realclean): Remove dir-add.texi here.
3253         * manual/libc.texinfo: @include dir-add.texi
3254         * configure.in: Remove check for old Debian install-info.
3255         * configure: Regenerated.
3256         * config.make.in (OLD_DEBIAN_INSTALL_INFO): Variable removed.
3257
3258 2003-11-08  Andreas Schwab  <schwab@suse.de>
3259
3260         * scripts/data/c++-types-ia64-linux-gnu.data: New file.
3261
3262 2003-11-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
3263
3264         * io/ftwtest-sh: Fix nested sed commands.
3265
3266 2003-11-10  Jakub Jelinek  <jakub@redhat.com>
3267
3268         * posix/regex_internal.h (re_string_char_size_at): Don't look beyond
3269         valid_len wide chars.
3270
3271 2003-11-09  Roland McGrath  <roland@redhat.com>
3272
3273         * manual/examples/dir2.c (one): Add const to argument type.
3274         Reported by J de Haan <j.de.haan@home.nl>.
3275
3276 2003-11-07  Ulrich Drepper  <drepper@redhat.com>
3277
3278         * po/pl.po: Update from translation team.
3279
3280 2003-11-07  Jakub Jelinek  <jakub@redhat.com>
3281
3282         * io/ftw.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3283         (ftw_dir, ftw_startup): Add __attribute ((noinline)).
3284         (NFTW_OLD_NAME, NFTW_NEW_NAME): New functions.
3285         (NFTW_NAME): Only define if !_LIBC, add versioned_symbol
3286         and compat_symbol.
3287         * io/ftw64.c (NFTW_OLD_NAME, NFTW_NEW_NAME): Define.
3288         * io/Versions (libc): Export nftw@@GLIBC_2.3.3
3289         and nftw64@@GLIBC_2.3.3.
3290
3291         * io/ftw.h (FTW_ACTIONRETVAL): New flag.
3292         (FTW_CONTINUE, FTW_STOP, FTW_SKIP_SUBTREE, FTW_SKIP_SIBLINGS): New.
3293         * io/ftw.c (ftw_dir): Add old_dir argument.
3294         Clear result if it was FTW_SKIP_SIBLINGS after processing all
3295         dir entries.  Change cwd back if old_dir != NULL.
3296         (process_entry): Adjust caller.  Don't change cwd back here.
3297         Change FTW_SKIP_SUBTREE result to 0.
3298         (ftw_startup): Adjust ftw_dir caller.
3299         Clear result if it was FTW_SKIP_SUBTREE or FTW_SKIP_SIBLINGS.
3300         * io/ftwtest.c (skip_subtree, skip_siblings): New variables.
3301         (options, main): Add --skip-subtree and --skip-siblings options.
3302         (cb): Use return FTW_CONTINUE instead of return 0.
3303         Handle --skip-subtree and --skip-siblings.
3304         * io/ftwtest-sh: Add tests for FTW_ACTIONRETVAL.
3305         * manual/filesys.texi: Document FTW_ACTIONRETVAL.
3306
3307 2003-11-04  Jakub Jelinek  <jakub@redhat.com>
3308
3309         * io/ftw.c (ftw_dir): Close dir if callback with FTW_D type returns
3310         non-zero.
3311         * io/Makefile (tests): Add bug-ftw4.
3312         * io/bug-ftw4.c: New test.
3313
3314 2003-10-27  Daniel Jacobowitz  <drow@mvista.com>
3315
3316         * libio/libioP.h [_IO_USE_OLD_IO_FILE]
3317         (struct _IO_FILE_complete_plus): New type.
3318         * libio/oldiofopen.c (_IO_old_fopen): Use _IO_FILE_complete_plus.
3319         * libio/oldiofdopen.c (_IO_old_fdopen): Likewise.
3320         * libio/oldiopopen.c (struct _IO_proc_file, _IO_old_popen): Likewise.
3321         Call _IO_old_init instead of _IO_init.
3322
3323 2003-11-03  Ulrich Drepper  <drepper@redhat.com>
3324
3325         * intl/locale.alias: nb_NO is now the correct name, not no_NO.
3326
3327         * locale/iso-639.def: Add Blin.
3328         Patch by Daniel Yacob <locales@geez.org>.
3329
3330 2003-10-31  Steven Munroe  <sjmunroe@us.ibm.com>
3331
3332         * sysdeps/powerpc/powerpc32/strncmp.S: New File.
3333         * sysdeps/powerpc/powerpc64/strncmp.S: New File.
3334
3335 2003-11-01  Randolph Chung  <tausq@debian.org>
3336
3337         * sysdeps/unix/sysv/linux/hppa/sysdep.h (LOAD_ARGS_0, LOAD_ARGS_1,
3338         LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4, LOAD_ARGS_5, LOAD_ARGS_6):
3339         Add missing parentheses.
3340
3341 2003-11-01  Roland McGrath  <roland@redhat.com>
3342
3343         * libio/bug-ftell.c (do_test): Add a cast.
3344
3345 2003-09-26  Daniel Jacobowitz  <drow@mvista.com>
3346
3347         * Makerules (shlib.lds): Make sure that ld doesn't try to link
3348         anything while generating the linker script.
3349
3350 2003-10-31  Roland McGrath  <roland@redhat.com>
3351
3352         * locale/lc-ctype.c (_nl_postload_ctype): Update _nl_global_locale's
3353         special members.
3354
3355 2003-10-29  Ulrich Drepper  <drepper@redhat.com>
3356
3357         * po/be.po: Update from translation team.
3358
3359 2003-10-27  Ulrich Drepper  <drepper@redhat.com>
3360
3361         * elf/rtld.c (map_doit): Pass __RTLD_OPENEXEC in last parameter to
3362         _dl_map_object.
3363
3364         * elf/sprof.c (load_shobj): Use l_map_start not l_addr to locate
3365         ELF header.
3366
3367         * inet/rcmd.c (__validuser2_sa): Remove unnecessary code to skip
3368         rest of line.  We use getline which means this cannot happen.
3369
3370 2003-10-26  Ulrich Drepper  <drepper@redhat.com>
3371
3372         * sysdeps/unix/sysv/linux/internal_statvfs.c (__internal_statvfs):
3373         Avoid infinite loops in case the mounts file is hosed.
3374         * io/Makefile: Add rules to build and run tst-statvfs.
3375         * io/tst-statvfs.c: New file.
3376
3377         * include/dlfcn.h (__RTLD_OPENEXEC): Define.
3378         * elf/dl-load.c (_dl_map_object_from_fd): Don't allow loading
3379         executables unless __RTLD_OPENEXEC flag is present.
3380         * elf/rtld.c (dl_main): Pass __RTLD_OPENEXEC flag to
3381         _dl_map_object when loading the executable.
3382
3383         * sysdeps/generic/glob.c (glob): Handle GLOB_BRACE and escaping
3384         correctly.
3385         * posix/globtest.sh: Add tests for GLOB_BRACE and escaping.
3386
3387         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Default
3388         reverse lookup format for IPv6 addresses is using bitstring and
3389         .ip6.arpa suffix.
3390         * resolv/ns_name.c: Implement encoding and decoding bitstring in
3391         hex format.
3392
3393 2003-10-23  Jakub Jelinek  <jakub@redhat.com>
3394
3395         * locale/programs/locale.c (show_info): Fix printing word values on
3396         64-bit big-endian architectures.
3397
3398 2003-10-19  Bruno Haible  <bruno@clisp.org>
3399
3400         * intl/hash-string.c (hash_string): Zero-extend each char from the
3401         string; the old code did a sign-extend on some platforms.
3402
3403 2003-10-22  Steven Munroe  <sjmunroe@us.ibm.com>
3404
3405         * sysdeps/powerpc/powerpc32/Makefile (+cflags, asm-CPPFLAGS): Don't
3406         append options to these.
3407         * sysdeps/powerpc/powerpc64/Makefile (+cflags, asm-CPPFLAGS): Likewise.
3408
3409 2003-10-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
3410
3411         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Fix merge error.
3412
3413 2003-10-15  Roland McGrath  <roland@redhat.com>
3414
3415         * elf/dl-iteratephdr.c [! SHARED] (dl_iterate_phdr): New function.
3416         Fake an entry for the main executable and then call __dl_iterate_phdr.
3417         * elf/Makefile (routines): Remove dl-iteratephdr-static.
3418         (elide-routines.os): Likewise.
3419         (CFLAGS-dl-iterate-phdr-static.c): Variable removed.
3420         * sysdeps/generic/dl-iteratephdr-static.c: File removed.
3421         * sysdeps/unix/sysv/linux/ia64/dl-iteratephdr-static.c: File removed.
3422
3423 2003-10-15  Jakub Jelinek  <jakub@redhat.com>
3424
3425         * elf/rtld.c (print_statistics): Print also number of relative
3426         relocations.
3427
3428 2003-10-12  Carlos O'Donell  <carlos@baldric.uwo.ca>
3429
3430         * sysdeps/hppa/sysdep.h: Undef JUMPTARGET before use.
3431         * sysdeps/unix/sysv/linux/hppa/sysdep.h: Define PSEUDO_ERRVAL,
3432         SYSCALL_ERROR_LABEL under all conditions, INTERNAL_SYSCALL_DECL,
3433         INTERNAL_SYSCALL_ERROR_P, INTERNAL_SYSCALL_ERRNO, INTERNAL_SYSCALL,
3434         and undef JUMPTARGET before use.
3435         [PIC]: Save pic register around syscall.
3436         * sysdeps/unix/sysv/linux/hppa/sysdep.c (syscall):
3437         Cleanup asm statment.
3438
3439 2003-10-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3440
3441         * sysdeps/unix/sysv/linux/sh/sysdep.h (DO_CALL): Add SYSCALL_INST_PAD
3442         after trapa instruction.
3443
3444 2003-10-09  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
3445
3446         * sysdeps/unix/sysv/linux/sh/syscalls.list: Add waitpid.
3447
3448 2003-10-10  Carlos O'Donell  <carlos@baldric.uwo.ca>
3449
3450         * sysdeps/hppa/Makefile (CFLAGS-malloc.c): Variable removed.
3451
3452 2003-10-09  Roland McGrath  <roland@redhat.com>
3453
3454         * elf/rtld.c (dl_main): Don't set l_name for sysinfo DSO, since there
3455         is no file to name.
3456
3457 2003-10-08  Jakub Jelinek  <jakub@redhat.com>
3458
3459         * sysdeps/generic/dl-sysdep.c (_dl_important_hwcaps): Don't generate
3460         two identical copies of strings.
3461
3462 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3463
3464         * posix/bug-regex11.c: Add some more tests which fail so far.
3465         Disable them.  Patch by Paolo Bonzini <bonzini@gnu.org>.
3466
3467 2003-10-05  Paolo Bonzini  <bonzini@gnu.org>
3468
3469         * posix/bug-regex11.c: Add more backreference-related test cases.
3470         (main): Show the failing regex in the error messages.
3471         * posix/regexec.c (check_dst_limits_calc_pos):
3472         Simplify some nested conditionals.  Replace if's with a switch
3473         statement.
3474         (check_dst_limits_calc_pos <TYPE_BKREF>): Rename parameter NODE to
3475         FROM_NODE, it shadows a local variable; don't recurse if FROM_NODE
3476         does not change in the recursive invocation, fixing an infinite loop
3477         in the ()\1*\1* regex.
3478         (sift_states_backward): Fix function comment.
3479         * posix/regcomp.c (calc_epsdest): Add an assertion.
3480
3481 2003-10-06  Ulrich Drepper  <drepper@redhat.com>
3482
3483         * manual/examples/testopt.c: Fix warnings.  Better error message
3484         for missing -c argument.
3485         Patch mostly by Gitonga Marete <bgmarete@comcast.net>.
3486
3487         * timezone/asia: Update from tzdata2003d.
3488         * timezone/australasia: Likewise.
3489         * timezone/backward: Likewise.
3490         * timezone/europe: Likewise.
3491         * timezone/iso3166.tab: Likewise.
3492         * timezone/northamerica: Likewise.
3493         * timezone/southamerica: Likewise.
3494         * timezone/zone.tab: Likewise.
3495
3496 2003-10-05  Jakub Jelinek  <jakub@redhat.com>
3497
3498         * sysdeps/ia64/backtrace.c: New file.
3499         * sysdeps/x86_64/backtrace.c: New file.
3500         * sysdeps/generic/unwind.h (_Unwind_Trace_Fn): New type.
3501         (_Unwind_Backtrace): New prototype.
3502
3503 2003-10-03  Ulrich Drepper  <drepper@redhat.com>
3504
3505         * sysdeps/i386/elf/bsd-setjmp.S: Use linkonce section for PIC stub.
3506         * sysdeps/i386/elf/setjmp.S: Likewise.
3507
3508 2003-10-02  Roland McGrath  <roland@redhat.com>
3509
3510         * argp/argp-help.c (__argp_short_program_name): Move inside [! _LIBC].
3511         * argp/argp-namefrob.h
3512         [_LIBC || HAVE_DECL_PROGRAM_INVOCATION_SHORT_NAME]
3513         (__argp_short_program_name): Don't declare fn, define it as a macro.
3514
3515 2003-08-22  Simon Josefsson  <jas@extundo.com>
3516
3517         * argp/argp-fmtstream.h [!__attribute__]: Define to nothing.
3518
3519         * argp/argp-help.c: Don't include malloc.h, some platforms
3520         complain and it doesn't appear to be used.
3521         [!_LIBC && HAVE_STRERROR_R && !HAVE_DECL_STRERROR_R]: Declare
3522         strerror_r.
3523         [!_LIBC && !HAVE_STRERROR_R && !HAVE_DECL_STRERROR]: Declare
3524         strerror.
3525         (hol_entry_long_iterate): Change __attribute to __attribute__.
3526         (_help, __argp_error, __argp_failure) [!_LIBC && (HAVE_FLOCKFILE
3527         && HAVE_FUNLOCKFILE)]: Protect call to flockfile and funlockfile.
3528         (__argp_basename) [!_LIBC]: New. Taken from LSH, by Niels Möller,
3529         modified after comments from Ulrich Drepper.
3530         (__argp_short_program_name): Ditto.
3531         (__argp_state_help, __argp_error, __argp_failure): Use it.
3532         (__argp_failure): Use strerror when necessary.
3533
3534         * argp/argp-namefrob.h (__flockfile, __funlockfile, __mempcpy)
3535         (__strchrnul, __strerror_r, __strndup) [!_LIBC]: Remove __-prefix.
3536         (clearerr_unlocked, feof_unlocked, ferror_unlocked)
3537         (fflush_unlocked, fgets_unlocked, fputc_unlocked, fputs_unlocked)
3538         (fread_unlocked, fwrite_unlocked, getc_unlocked, getchar_unlocked)
3539         (putc_unlocked, putchar_unlocked) [!_LIBC && !HAVE_DECL_*]: Map to
3540         non-unlocked functions.
3541         [!_LIBC]: Add prototypes for __argp_basename and
3542         __argp_short_program_name.
3543
3544         * argp/argp-parse.c (argp_default_parser): Only use
3545         program_invocation{_short,}_name if declared.
3546         (parser_init): Use __argp_short_program_name.
3547
3548         * argp/argp-xinl.c [_LIBC || HAVE_FEATURES_H]: Add CPP check for
3549         '#include features.h'.
3550
3551         * argp/argp.h [!__attribute__]: Define to nothing.
3552
3553 2003-09-26  Paolo Bonzini  <bonzini@gnu.org>
3554
3555         * posix/regcomp.c (parse_sub_exp): Pass RE_CARET_ANCHORS_HERE
3556         for the first token in a subexpression as well.
3557
3558 2003-10-02  Jakub Jelinek  <jakub@redhat.com>
3559
3560         * posix/regcomp.c (peek_token): Add 2003-09-20 changes for anchor
3561         handling again.
3562         (parse_reg_exp): Likewise.
3563         * posix/regex.h (RE_CARET_ANCHORS_HERE): Define.
3564
3565         * posix/bug-regex11.c (tests): Add new tests.
3566         * posix/bug-regex12.c (tests): Add new test.
3567
3568 2003-10-01  Thorsten Kukuk  <kukuk@suse.de>
3569
3570         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3571         variables only used if TLS_DTV_AT_TP is defined into the #if branch.
3572
3573 2003-10-02  Jeroen Dekkers  <jeroen@dekkers.cx>
3574
3575         * sysdeps/mach/hurd/malloc-machine.h: Copy the tsd code from
3576         the old thread-m.h header too.
3577
3578 2003-10-02  Ulrich Drepper  <drepper@redhat.com>
3579
3580         * sysdeps/unix/sysv/linux/ia64/bits/sigstack.h (MINSIGSTKSZ): Go
3581         back to 131027 since this is what the kernel enforces.
3582
3583         * inet/getnameinfo.c: Move domain out of nrl_domainname scope and
3584         define it with libc_freeres_ptr.
3585
3586 2003-10-01  Roland McGrath  <roland@redhat.com>
3587
3588         * elf/rtld.c (dl_main): Add cast in last change.
3589
3590 2003-09-10  Chris Demetriou  <cgd@broadcom.com>
3591
3592         * sysdeps/unix/sysv/linux/mips/mips64/n32/sysdep.h: Remove
3593         "#if 0" surrounding most of contents.
3594         (SYSCALL_ERROR_LABEL): Define.
3595         (__SYSCALL_CLOBBERS): Add $10.
3596         (internal_syscall7): Remove.
3597         * sysdeps/unix/sysv/linux/mips/mips64/n64/sysdep.h: Likewise.
3598
3599 2003-09-30  Ulrich Drepper  <drepper@redhat.com>
3600
3601         * elf/rtld.c (dl_main): Also set l_map_start.
3602
3603 2003-09-30  Daniel Jacobowitz  <drow@mvista.com>
3604
3605         * elf/rtld.c (dl_main): Set l_libname and l_name for the sysinfo DSO
3606         to work around kernel problem.
3607
3608 2003-09-27  Wolfram Gloger  <wg@malloc.de>
3609
3610         * malloc/malloc.c: Include <malloc-machine.h> earlier instead of
3611         "thread-m.h", so that default parameters can be overridden in a
3612         system-specific malloc-machine.h.  Remove extra ; from extern "C"
3613         closing brace.
3614         * sysdeps/generic/malloc-machine.h: New file.
3615         * sysdeps/mach/hurd/malloc-machine.h: New file.
3616         * malloc/thread-m.h: Removed.
3617         * malloc/Makefile: Remove CFLAGS-malloc.c parameter addition, it
3618         is in sysdeps/generic/malloc-machine.h now.
3619
3620 2003-09-29  Ulrich Drepper  <drepper@redhat.com>
3621
3622         * elf/dl-reloc.c (_dl_allocate_static_tls): Move definition of
3623         variables only used if TLS_TCB_AT_TP is defined into the #if
3624         branch.
3625
3626         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add __extension__ as
3627         well to cover using long long in C90.
3628
3629 2003-09-28  Alfred M. Szmidt  <ams@kemisten.nu>
3630
3631         * sysdeps/mach/hurd/bits/libc-lock.h (__libc_cleanup_pop):
3632         Redefine and use __libc_cleanup_region_end instead.
3633
3634 2003-09-29  Thorsten Kukuk  <kukuk@suse.de>
3635
3636         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Use __inline and
3637         fix prototypes for picky C++ compilers.
3638
3639 2003-09-27  Ulrich Drepper  <drepper@redhat.com>
3640
3641         * sysdeps/unix/sysv/linux/ustat.c (ustat): Set errno to EINVAL if
3642         the device ID is invalid and return -1.
3643         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3644
3645 2003-09-26  Andreas Schwab  <schwab@suse.de>
3646
3647         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Pass fourth argument to
3648         rt_sigprocmask system call.
3649
3650 2003-09-25  Roland McGrath  <roland@redhat.com>
3651
3652         * sysdeps/unix/sysv/linux/dl-execstack.c (_dl_make_stack_executable):
3653         Don't check for zero __libc_stack_end, it should be initialized.
3654         [_STACK_GROWS_DOWN] [PROT_GROWSDOWN]: Try using PROT_GROWSDOWN flag
3655         and fall back if it fails with EINVAL.
3656         [_STACK_GROWS_UP] [PROT_GROWSUP]: Likewise for PROT_GROWSUP.
3657
3658 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3659
3660         * sysdeps/unix/sysv/linux/x86_64/dl-procinfo.c: Include
3661         sysdeps/i386/dl-procinfo.c instead of
3662         sysdeps/unix/sysv/linux/i386/dl-procinfo.c.
3663         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Avoid using
3664         #include_next.
3665
3666 2003-09-25  Ulrich Drepper  <drepper@redhat.com>
3667
3668         * posix/regcomp.c (peek_token): Remove recent changes for anchor
3669         handling again.
3670         (parse_reg_exp): Likewise.
3671         * posix/regex.h: Remove RE_CARET_ANCHORS_HERE.
3672
3673         * csu/Makefile ($(objpfx)version-info.h): Fix sed script to handle
3674         banners.
3675
3676         * nis/nis_table.c (nis_list): Always strdup string used with
3677         ibreq->ibr_name.  Add several NULL pointer checks.
3678
3679         * nis/nss_nisplus/nisplus-alias.c: Add check for NULL return value
3680         of nis_list.
3681         * nis/nss_nisplus/nisplus-ethers.c: Likewise.
3682         * nis/nss_nisplus/nisplus-grp.c: Likewise.
3683         * nis/nss_nisplus/nisplus-hosts.c: Likewise.
3684         * nis/nss_nisplus/nisplus-netgrp.c: Likewise.
3685         * nis/nss_nisplus/nisplus-network.c: Likewise.
3686         * nis/nss_nisplus/nisplus-proto.c: Likewise.
3687         * nis/nss_nisplus/nisplus-publickey.c: Likewise.
3688         * nis/nss_nisplus/nisplus-pwd.c: Likewise.
3689         * nis/nss_nisplus/nisplus-rpc.c: Likewise.
3690         * nis/nss_nisplus/nisplus-service.c: Likewise.
3691         * nis/nss_nisplus/nisplus-spwd.c: Likewise.
3692
3693         * sysdeps/unix/sysv/linux/alpha/bits/mman.h: Define PROT_GROWSDOWN
3694         and PROT_GROWSUP.
3695         * sysdeps/unix/sysv/linux/arm/bits/mman.h: Likewise.
3696         * sysdeps/unix/sysv/linux/cris/bits/mman.h: Likewise.
3697         * sysdeps/unix/sysv/linux/hppa/bits/mman.h: Likewise.
3698         * sysdeps/unix/sysv/linux/i386/bits/mman.h: Likewise.
3699         * sysdeps/unix/sysv/linux/ia64/bits/mman.h: Likewise.
3700         * sysdeps/unix/sysv/linux/m68k/bits/mman.h: Likewise.
3701         * sysdeps/unix/sysv/linux/powerpc/bits/mman.h: Likewise.
3702         * sysdeps/unix/sysv/linux/s390/bits/mman.h: Likewise.
3703         * sysdeps/unix/sysv/linux/sh/bits/mman.h: Likewise.
3704         * sysdeps/unix/sysv/linux/sparc/bits/mman.h: Likewise.
3705         * sysdeps/unix/sysv/linux/x86_64/bits/mman.h: Likewise.
3706
3707 2003-09-25  Jakub Jelinek  <jakub@redhat.com>
3708
3709         * misc/syslog.c: Include locale.h.
3710         (vsyslog): Add date always in C locale %h %e %T format.
3711
3712 2003-09-24  Paul Eggert  <eggert@twinsun.com>
3713
3714         * argp/argp-fmtstream.c (__argp_fmtstream_ensure): Check for
3715         size_t overflow when reallocating storage.
3716         * argp/argp-help.c (make_hol, hol_append): Likewise.
3717         (SIZE_MAX): New macro.
3718
3719 2003-08-07  Alfred M. Szmidt  <ams@kemisten.nu>
3720
3721         * sysdeps/mach/hurd/bits/libc-lock.h
3722         (__libc_cleanup_push, __libc_cleanup_pop): New macros.
3723
3724 2003-08-01  Alfred M. Szmidt  <ams@kemisten.nu>
3725
3726         * sysdeps/i386/dl-procinfo.h: New file, contents taken from ...
3727         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: ... here.
3728         #include_next dl-procinfo.h to get them.
3729         (_DL_HWCAP_COUNT): Moved to sysdeps/i386/dl-procinfo.h.
3730         (_DL_PLATFORMS_COUNT): Likewise.
3731         (_DL_FIRST_PLATFORM): Likewise.
3732         (_DL_HWCAP_PLATFORM): Likewise.
3733         (HWCAP_I386_FPU, HWCAP_I386_VME, HWCAP_I386_DE, HWCAP_I386_PSE,
3734         HWCAP_I386_TSC, HWCAP_I386_MSR, HWCAP_I386_PAE, HWCAP_I386_MCE,
3735         HWCAP_I386_CX8, HWCAP_I386_APIC, HWCAP_I386_SEP, HWCAP_I386_MTRR,
3736         HWCAP_I386_PGE, HWCAP_I386_MCA, HWCAP_I386_CMOV,
3737         HWCAP_I386_FCMOV, HWCAP_I386_MMX, HWCAP_I386_OSFXSR,
3738         HWCAP_I386_XMM, HWCAP_I386_XMM2, HWCAP_I386_AMD3D,
3739         HWCAP_IMPORTANT): Likewise.
3740         (_DL_PROCINFO_H_): Likewise.
3741         (_dl_hwcap_string, _dl_platform_string, _dl_string_hwcap): Likewise.
3742         (_dl_string_platform): Likewise.
3743         * sysdeps/unix/sysv/linux/i386/dl-procinfo.c: Moved to ...
3744         * sysdeps/i386/dl-procinfo.c: ... here, new file.
3745
3746 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3747
3748         * sysdeps/unix/sysv/linux/dl-execstack.c
3749         (_dl_make_stack_executable): Remember that we changed the permission.
3750
3751         * sysdeps/ia64/dl-machine.h (RTLD_START): Remove setting of
3752         __libc_stack_end.  Patch by David Mosberger.
3753
3754 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3755
3756         * elf/Versions (ld): Export __libc_stack_end@GLIBC_2.1 instead of
3757         __libc_stack_end@GLIBC_PRIVATE.
3758
3759         * sysdeps/generic/dl-sysdep.c (DL_STACK_END): Define if not defined.
3760         (_dl_sysdep_start): Set __libc_stack_end here.
3761         * sysdeps/alpha/dl-machine.h (RTLD_START): Remove setting of
3762         __libc_stack_end.
3763         * sysdeps/arm/dl-machine.h (RTLD_START): Likewise.
3764         * sysdeps/cris/dl-machine.h (RTLD_START): Likewise.
3765         * sysdeps/i386/dl-machine.h (RTLD_START): Likewise.
3766         * sysdeps/m68k/dl-machine.h (RTLD_START): Likewise.
3767         * sysdeps/s390/s390-32/dl-machine.h (RTLD_START): Likewise.
3768         * sysdeps/s390/s390-64/dl-machine.h (RTLD_START): Likewise.
3769         * sysdeps/sh/dl-machine.h (RTLD_START): Likewise.
3770         * sysdeps/x86_64/dl-machine.h (RTLD_START): Likewise.
3771         * sysdeps/ia64/dl-machine.h (DL_STACK_END): Define.
3772         * sysdeps/sparc/sparc32/dl-machine.h (DL_STACK_END): Define.
3773         (RTLD_START): Remove setting of __libc_stack_end.
3774         * sysdeps/sparc/sparc64/dl-machine.h (DL_STACK_END): Define.
3775         (RTLD_START): Remove setting of __libc_stack_end.
3776
3777 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3778
3779         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Add gnu_dev_ prefix to
3780         function definitions.  Adjust macro expansions accordingly.
3781         * sysdeps/unix/sysv/linux/Versions: Add gnu_dev_ prefix to major,
3782         minor, makedev name.
3783         * sysdeps/unix/sysv/linux/makedev.c: Likewise.
3784
3785 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3786
3787         * sysdeps/unix/sysv/linux/sys/sysmacros.h (major, minor, makedev):
3788         Add __THROW.
3789
3790 2003-09-24  Jakub Jelinek  <jakub@redhat.com>
3791
3792         * nscd/Makefile (others): Add nscd before including ../Rules.
3793
3794 2003-09-24  Ulrich Drepper  <drepper@redhat.com>
3795
3796         * nscd/Makefile: Add rules to build nscd as a PIE.
3797         * configure.in: Check for -fpie and -pie compiler options.
3798         * config.make.in (have-fpie): Define.
3799
3800 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3801
3802         * sysdeps/unix/sysv/linux/sys/sysmacros.h: Adjust for larger
3803         kernel dev_t size.
3804         * sysdeps/unix/sysv/linux/alpha/sys/sysmacros.h: Removed.
3805         * sysdeps/unix/sysv/linux/sparc/sys/sysmacros.h: Removed.
3806         * sysdeps/unix/sysv/linux/makedev.c: New file.
3807         * sysdeps/unix/sysv/linux/Dist: Add makedev.c.
3808         * sysdeps/unix/sysv/linux/Makefile [subdir=misc]
3809         (sysdep_routines): Add makedev.
3810         * sysdeps/unix/sysv/linux/Versions [libc] (GLIBC_2.3.3): Add
3811         major, minor, makedev.
3812         * sysdeps/unix/sysv/linux/ustat.c (ustat): Adjust for 32-bit
3813         kernel dev_t.
3814         * sysdeps/unix/sysv/linux/alpha/ustat.c: Removed.
3815         * sysdeps/unix/sysv/linux/xmknod.c (__xmknod): Likewise.
3816         * sysdeps/unix/sysv/linux/alpha/xmknod.c: Removed.
3817         Code by Alexander Viro <aviro@redhat.com>.
3818
3819 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3820
3821         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions [libc]
3822         (GLIBC_2.3.3): Add setcontext, getcontext, swapcontext, and
3823         makecontext.
3824         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct change
3825         for include Altivec support for PPC32.  It was not compatible.
3826         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h: Adjust
3827         offsets for ucontext_t change.
3828         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Adjust
3829         for ucontext_t change.  Add compatibility code.
3830         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S: Likewise.
3831         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
3832         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
3833         Patch by Paul Mackerras <paulus@samba.org>.
3834
3835 2003-02-25  Randolph Chung  <tausq@debian.org>
3836
3837         * sysdeps/hppa/Makefile: Include compat code in build.
3838         * sysdeps/hppa/libgcc-compat.c: New file.
3839         * sysdeps/hppa/Dist: Add libgcc-compat.c.
3840         * sysdeps/hppa/Versions [GLIBC_2.2]: Add __clz_tab.
3841
3842 2003-09-23  Roland McGrath  <roland@redhat.com>
3843
3844         * elf/rtld.c (dl_main): In rtld_is_main case, reinitialize
3845         GL(dl_stack_flags) according to rtld's own PT_GNU_STACK.
3846         Move GL(dl_make_stack_executable_hook) initialization up.
3847         * elf/tst-execstack-prog.c: New file.
3848         * elf/Makefile (tests-execstack-yes): Add it.
3849         (LDFLAGS-tst-execstack-prog): New variable.
3850
3851 2003-09-23  Jakub Jelinek  <jakub@redhat.com>
3852
3853         * sysdeps/x86_64/dl-machine.h (RTLD_START): Set __libc_stack_end
3854         before calling _dl_start, using %rip relative access.
3855         Use %rip relative access to _dl_skip_args, _rtld_local._dl_loaded
3856         and _dl_fini.
3857
3858 2003-09-23  Roland McGrath  <roland@redhat.com>
3859
3860         * sysdeps/i386/dl-machine.h (RTLD_START): Set __libc_stack_end before
3861         calling _dl_start, using GOTOFF access.
3862
3863         * configure.in (libc_cv_z_execstack): New check.
3864         * configure: Regenerated.
3865         * config.make.in (have-z-execstack): New variable set by it.
3866         * elf/tst-execstack.c: New file.
3867         * elf/tst-execstack-mod.c: New file.
3868         * elf/tst-execstack-needed.c: New file.
3869         * elf/Makefile (tests-execstack-yes, modules-execstack-yes): New
3870         variables.
3871         (tests, modules-names): Conditionally include them.
3872         (distribute): Add tst-execstack-mod.c here.
3873         ($(objpfx)tst-execstack, $(objpfx)tst-execstack.out): New targets.
3874         (LDFLAGS-tst-execstack, LDFLAGS-tst-execstack-mod): New variables.
3875         ($(objpfx)tst-execstack-needed): New target.
3876         (LDFLAGS-tst-execstack-needed): New variable.
3877
3878         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add _dl_stack_flags
3879         and _dl_make_stack_executable_hook.  Declare _dl_make_stack_executable.
3880         * elf/rtld.c (_rtld_global): Add initializer for _dl_stack_flags.
3881         (dl_main): Reset _dl_stack_flags according to PT_GNU_STACK phdr.
3882         Initialize _dl_make_stack_executable_hook.
3883         * elf/dl-support.c: Define those new variables.
3884         (_dl_non_dynamic_init): Scan phdrs for PT_GNU_STACK.
3885         (_dl_phdr): Fix type.
3886         * elf/dl-load.c (_dl_map_object_from_fd): Grok PT_GNU_STACK phdr and
3887         enable execute permission for the stack if necessary.
3888         * sysdeps/generic/dl-execstack.c: New file.
3889         * elf/Makefile (dl-routines): Add it.
3890         * elf/Versions (ld: GLIBC_PRIVATE): Add _dl_make_stack_executable.
3891         * sysdeps/unix/sysv/linux/dl-execstack.c: New file.
3892
3893 2003-09-23  Ulrich Drepper  <drepper@redhat.com>
3894
3895         * sysdeps/posix/sprofil.c (pc_to_index): Remove inline marker.
3896
3897 2003-09-20  Alfred M. Szmidt  <ams@kemisten.nu>
3898
3899         * sysdeps/generic/utmp_file.c (setutent_file, LOCK_FILE,
3900         UNLOCK_FILE, setutent_file): Use fcntl_not_cancel instead of
3901         __fcntl_nocancel.
3902
3903 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3904
3905         * malloc/malloc.c: Include <stdint.h>.
3906
3907 2003-09-20  Paolo Bonzini  <bonzini@gnu.org>
3908
3909         * posix/regcomp.c (build_word_op): Rename like...
3910         (build_charclass_op): ...this.  Accept two extra parameters,
3911         CLASS_NAME and EXTRA.  Add EXTRA to the result, not only _.
3912         (peek_token): Accept \s and \S as OP_SPACE and OP_NOTSPACE.
3913         (parse_expression): Replace build_word_op with
3914         build_charclass_op, add new arguments, accept OP_SPACE
3915         and OP_NOTSPACE.
3916         * posix/regex_internal.h (re_token_type_t): Add OP_SPACE
3917         and OP_NOTSPACE.
3918
3919         * posix/regcomp.c (peek_token): Don't look back for ( or |
3920         to check whether to treat a caret as special.  It fails
3921         for the (extended) regex \(^.
3922         (parse, parse_reg_exp): Pass RE_CARET_ANCHORS_HERE to fetch_token.
3923         * posix/regex.h: Define RE_CARET_ANCHORS_HERE.
3924
3925         * posix/regexec.c: Check out of bounds value before shifting.
3926
3927         * posix/regex_internal.h: Define __attribute for non-gcc.
3928
3929 2003-09-22  Jakub Jelinek  <jakub@redhat.com>
3930
3931         * include/atomic.h (atomic_compare_and_exchange_val_rel,
3932         atomic_compare_and_exchange_bool_rel): Swap oldval/newval arguments
3933         to avoid confusion.
3934
3935         * sysdeps/unix/opendir.c: Include string.h.
3936
3937 2003-09-22  Ulrich Drepper  <drepper@redhat.com>
3938
3939         * timezone/zdump.c: Update from tzcode2003c.
3940         * timezone/zic.c: Likewise.
3941         * timezone/leapseconds: Update from tzdata2003c.
3942
3943 2003-09-19  Ulrich Drepper  <drepper@redhat.com>
3944
3945         * elf/Makefile ($(objpfx)librtld.os): Create link map also for
3946         final build to ease quality control.
3947
3948         * sysdeps/unix/sysv/linux/getcwd.c (__getcwd): If compiled for
3949         ld.so, don't include NULL buffer pointer handling.
3950
3951 2003-09-19  Jakub Jelinek  <jakub@redhat.com>
3952
3953         * dlfcn/dlopen.c (dlopen): Add static_link_warning.
3954
3955 2003-09-18  Jakub Jelinek  <jakub@redhat.com>
3956
3957         * libio/memstream.c (open_memstream): Use _IO_init instead of
3958         _IO_old_init.
3959
3960 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
3961
3962         * sysdeps/generic/wordexp.c (eval_expr_val): Use strtol since we
3963         have to recognize octal and hexadecimal numbers as well.  Simplify
3964         function, signs are handled in strtol.
3965         * posix/wordexp-test.c: Add tests for octal and hexadecimal
3966         numbers in arithmetic expressions.
3967
3968 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
3969
3970         * elf/Makefile (distribute): Add tst-alignmod.c.
3971         (tests): Add tst-align.
3972         (modules-names): Add tst-alignmod.
3973         (CFLAGS-tst-align.c, CFLAGS-tst-alignmod.c): Add
3974         $(stack-align-test-flags).
3975         ($(objpfx)tst-align): Depend on libdl.
3976         ($(objpfx)tst-align.out): Depend on tst-alignmod.so.
3977         * elf/tst-align.c: New file.
3978         * elf/tst-alignmod.c: New file.
3979         * misc/Makefile (CFLAGS-tst-tsearch.c): Add $(stack-align-test-flags).
3980         * misc/tst-tsearch.c: Include tst-stack-align.h.
3981         (stack_align_check): New array.
3982         (cmp_fn, walk_action): Use TEST_STACK_ALIGN ().
3983         (main): Report error if stack was not enough aligned
3984         in cmp_fn or walk_action.
3985         * stdlib/Makefile (CFLAGS-tst-qsort.c): Add $(stack-align-test-flags).
3986         * stdlib/tst-qsort.c: Include tst-stack-align.h.
3987         (align_check): New var.
3988         (compare): Use TEST_STACK_ALIGN () macro.
3989         (main): Report error if stack was not enough aligned in compare.
3990         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Remove
3991         unneeded -mpreferred-stack-boundary=4.
3992         * sysdeps/x86_64/tst-stack-align.h: New file.
3993
3994         * libio/memstream.c (_IO_wmem_jumps): Remove unused structure.
3995         (_IO_wmem_sync, _IO_wmem_finish): Remove unused functions.
3996
3997 2003-09-17  Philip Blundell  <philb@gnu.org>
3998
3999         * sysdeps/arm/dl-machine.h (CALL_ROUTINE): Deleted.
4000         (BX): Define.
4001         (ELF_MACHINE_RUNTIME_TRAMPOLINE): Optimise a little.
4002
4003         * sysdeps/arm/sysdep.h (DO_RET): New.
4004
4005         * sysdeps/unix/sysv/linux/arm/vfork.S: Add #error if __NR_vfork
4006         required but not defined.  Improve test of error code.
4007
4008 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
4009
4010         * sysdeps/i386/Makefile (stack-align-test-flags): Add
4011         -malign-double -mpreferred-stack-boundary=4.
4012
4013 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
4014
4015         * sysdeps/posix/utimes.c (__utimes): Truncate instead of round.
4016         * sysdeps/unix/sysv/linux/utimes.c (__utimes): Likewise.
4017
4018 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
4019
4020         * sysdeps/i386/Makefile (sysdep-CFLAGS): If not in math or csu
4021         subdir, add -mpreferred-stack-boundary=4, with few exceptions.
4022
4023 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
4024
4025         * Makeconfig (stack-align-test-flags): Set.
4026         * stdlib/Makefile (CFLAGS-tst-bsearch.c): Add
4027         $(stack-align-test-flags).
4028         * stdlib/tst-bsearch.c: Include tst-stack-align.h.
4029         (align_check): New var.
4030         (comp): Use TEST_STACK_ALIGN macro.
4031         (do_test): Fail if align_check != 1.
4032         * sysdeps/generic/tst-stack-align.h: New file.
4033         * sysdeps/i386/i686/Makefile (stack-align-test-flags): Add -msse.
4034         * sysdeps/i386/i686/tst-stack-align.h: New file.
4035
4036 2003-09-17  Ulrich Drepper  <drepper@redhat.com>
4037
4038         * sysdeps/unix/sysv/linux/i386/clone.S: Make sure child gets a
4039         stack which is aligned (mod 16).
4040
4041 2003-09-17  Uwe Reimann  <Uwe_Reimann@gmx.net>
4042             Hans-Peter Nilsson  <hp@axis.com>
4043
4044         * sysdeps/cris/dl-machine.h (elf_machine_type_class): Classify
4045         R_CRIS_GLOB_DAT as ELF_RTYPE_CLASS_PLT.  Clarify comment.
4046
4047 2003-09-17  Jakub Jelinek  <jakub@redhat.com>
4048
4049         * dirent/scandir.c: Include bits/libc-lock.h.
4050         (struct scandir_cancel_struct): New type.
4051         (cancel_handler): New function.
4052         (SCANDIR): Add __libc_cleanup_{push,pop}, save state into
4053         scandir_cancel_struct.
4054
4055 2003-09-16  Ulrich Drepper  <drepper@redhat.com>
4056
4057         * sysdeps/unix/sysv/linux/Dist: Remove internal_statvfs.c.
4058         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
4059         Add internal_statvfs.
4060         * sysdeps/unix/sysv/linux/fstatvfs.c: Call __internal_statvfs
4061         instead of including "internal_statvfs.c".
4062         * sysdeps/unix/sysv/linux/statvfs.c: Likewise.
4063         * sysdeps/unix/sysv/linux/internal_statvfs.c: Make it a real function.
4064         Add code to avoid the stat calls on all the reported mount points
4065         when we can determine mismatch in advance.
4066         * sysdeps/unix/sysv/linux/linux_fsinfo.h: Add AUTOFS_SUPER_MAGIC and
4067         USBDEVFS_SUPER_MAGIC.
4068
4069 2003-09-16  Jakub Jelinek  <jakub@redhat.com>
4070
4071         * posix/Versions (sched_getaffinity, sched_setaffinity): Change
4072         from GLIBC_2.3.2 to GLIBC_2.3.3 symbol version.
4073
4074 2003-09-16  Bruno Haible  <bruno@clisp.org>
4075
4076         * intl/tst-gettext2.sh: Set GCONV_PATH and LOCPATH only after
4077         invoking msgfmt, not before.
4078
4079 2003-09-15  Jakub Jelinek  <jakub@redhat.com>
4080
4081         * argp/argp.h (argp_parse, __argp_parse): Remove __THROW.
4082         * argp/Makefile (CFLAGS-argp-help.c, CFLAGS-argp-parse.c): Add
4083         $(uses-callbacks).
4084         * dirent/Makefile (CFLAGS-scandir.c, CFLAGS-scandir64.c): Likewise.
4085         * elf/Makefile (CFLAGS-dl-iterate-phdr.c,
4086         CFLAGS-dl-iterate-phdr-static.c): Add $(uses-callbacks).
4087         * elf/dl-iteratephdr.c (cancel_handler): New function.
4088         (__dl_iterate_phdr): Add __libc_cleanup_{push,pop}.
4089         * elf/link.h (dl_iterate_phdr): Remove __THROW.
4090         * io/Makefile (CFLAGS-fts.c): Merge into one assignment.
4091         Add $(uses-callbacks).
4092         (CFLAGS-ftw.c, CFLAGS-ftw64.c): Add $(uses-callbacks).
4093         * misc/Makefile (CFLAGS-tsearch.c, CFLAGS-lsearch.c): Change
4094         $(exceptions) to $(uses-callbacks).
4095         * Makeconfig (uses-callbacks): Set to $(exceptions).
4096         * posix/Makefile (CFLAGS-glob.c, CFLAGS-glob64.c): Add
4097         $(uses-callbacks).
4098         * stdlib/Makefile (CFLAGS-bsearch.c, CFLAGS-msort.c, CFLAGS-qsort.c):
4099         Likewise.
4100
4101 2003-09-15  Andreas Schwab  <schwab@suse.de>
4102
4103         * sysdeps/m68k/setjmp.c: Add hidden_def.
4104
4105 2003-09-14  Ulrich Drepper  <drepper@redhat.com>
4106
4107         * libio/memstream.c (open_memstream): Don't allow wide char operations.
4108
4109         * dirent/dirent.h: Remove __THROW from scandir.
4110
4111 2003-09-14  Philip Blundell  <philb@gnu.org>
4112
4113         * sysdeps/unix/sysv/linux/arm/mmap.S: Use sys_mmap2 if it's known
4114         to be available.
4115
4116