Update.
[kopensolaris-gnu/glibc.git] / ChangeLog
1 2004-04-04  Carlos O'Donell  <carlos@baldric.uwo.ca>
2
3         * sysdeps/hppa/Dist: Add bits/link.h elf/entry.h.
4
5         * sysdeps/hppa/bits/link.h: New file.
6
7         * sysdeps/hppa/dl-machine.h (__hppa_init_bootstrap_fdesc_table):
8         Initialze the fdesc table for the generic code.
9         (elf_machine_dynamic): Use asm version.
10         (elf_machine_load_addresss): Simplify asm by calling
11         elf_machine_dynamic.
12         (elf_machine_fixup_plt): Correct comment.
13         (elf_machine_profile_fixup_plt): New.
14         (elf_machine_runtime_setup): Check PLT exists, if lazy=1  process
15         normally, else relocate all the absolute entries.
16         (RTLD_START): Fix comments.
17         (TRAMPOLINE_TEMPLATE): Reformat assembly, add return pointer for
18         calls to profile_fixup.
19         (ELF_MACHINE_SIZEOF_JMP_SLOT, DL_STATIC_FUNCTION_ADDRESS,
20         DL_PLATFORM_INIT): Define.
21         (DL_FUNCTION_ADDRESS): Remove.
22         (dl_platform_init): New.
23         (elf_machine_rela): Use generic fdesc code, and process all COPY
24         relocations. Use __attribute__((always_inline)).
25         (elf_machine_rela_relative): Add sanity checks, remove IPLT
26         processing, print error message in default case. Use
27         __attribute__((always_inline)).
28         (elf_machine_lazy_rel): Use __attribute__((always_inline)).
29
30 2004-04-05  Carlos O'Donell  <carlos@baldric.uwo.ca>
31
32         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Use only sw[0]
33         and call feraiseexcept.
34
35 2003-11-15  Randolph Chung  <tausq@debian.org>
36
37         * gmon/gmon.c (__monstartup): Round kcountsize to multiples of
38         the froms[] array so the array is properly aligned.
39
40 2004-04-05  H.J. Lu  <hongjiu.lu@intel.com>
41
42         * Makeconfig (libgcc_eh): Add -Wl,.
43
44         * configure.in: Add -lgcc_s for --as-needed check.
45
46 2004-04-16  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
47
48         * sysdeps/sh/elf/configure.in: New file.
49
50 2004-04-17  Ulrich Drepper  <drepper@redhat.com>
51
52         * iconvdata/gconv-modules: Add PT154 and RK1048 entries.
53         * iconvdata/tst-tables.sh: Add PT154 and RK1048.
54         * iconvdata/Makefile (modules): Add PT154 anhd RK1048.
55         (distribute): Add pt154.c and rk1048.c.
56         (gen-8bit-gap-modules): Add pt154 and rk1048.
57         * icondata/pt154.c: New file.
58         * iconvdata/rk1048.c: New file.
59
60         * rt/tst-timer4.c: Disable some tests, mark errors better.
61
62 2004-04-16  Ulrich Drepper  <drepper@redhat.com>
63
64         * rt/tst-mqueue6.c (mqsend): Don't inline.
65         (mqrecv): Likewise.
66
67         * rt/tst-mqueue3.c (do_test): Cope with kernel without mq support.
68
69         * sysdeps/ieee754/bits/nan.h (__nan_union): Add __attribute_used__
70         attribute to keep gcc quiet.
71
72 2004-04-16  Jakub Jelinek  <jakub@redhat.com>
73
74         * misc/syslog.c (vsyslog): Avoid freeing failbuf.
75
76 2004-04-15  Jakub Jelinek  <jakub@redhat.com>
77
78         * rt/Makefile (tests): Add tst-timer4.
79         * rt/tst-timer4.c: New test.
80
81 2004-04-15  Jakub Jelinek  <jakub@redhat.com>
82
83         * rt/tst-mqueue5.c (rtmin_code): New variable.
84         (rtmin_handler): Set it.
85         (thr, do_child, do_test): Also check rtmin_code.
86
87 2004-04-14  Jakub Jelinek  <jakub@redhat.com>
88
89         * rt/Makefile (tests): Add tst-mqueue7.
90         (tst-mqueue7-ARGS): Set.
91         * rt/tst-mqueue7.c: New test.
92
93 2004-04-13  Jakub Jelinek  <jakub@redhat.com>
94
95         * rt/Makefile (tests): Add tst-mqueue5 and tst-mqueue6.
96         * rt/tst-mqueue1.c (do_one_test): Bitwise or check_attrs () into
97         result instead of replacing it.  Use TEMP_FAILURE_RETRY around
98         waitpid, kill child if waitpid failed.
99         (do_test): Bitwise or check_attrs () into result instead of replacing
100         it.  Change temp mq name.
101         * rt/tst-mqueue5.c: New test.
102         * rt/tst-mqueue6.c: New test.
103         * rt/tst-mqueue.h: Include stdio.h, unistd.h, sys/uio.h.
104         (temp_mq_list, delete_temp_mqs): Remove.
105         (temp_mq_fd): New variable.
106         (do_cleanup, do_prepare): New functions.
107         (add_temp_mq): Rewritten to use a temp file.
108         (PREPARE): Define.
109         (CLEANUP_HANDLER): Change to do_cleanup ().
110
111         * rt/tst-timer3.c: Don't fail if _POSIX_THREADS is not available.
112
113 2004-04-13  Thorsten Kukuk  <kukuk@suse.de>
114
115         * sysdeps/s390/ffs.c: Include limits.h
116
117 2004-04-13  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
118
119         * sysdeps/unix/sysv/linux/sh/sysdep.h (SUBSTITUTE_ARGS_1,
120         SUBSTITUTE_ARGS_2, SUBSTITUTE_ARGS_3, SUBSTITUTE_ARGS_4,
121         SUBSTITUTE_ARGS_5, SUBSTITUTE_ARGS_6, SUBSTITUTE_ARGS_7): Load
122         argument values into temporary variables.
123
124 2004-04-15  Atsushi Nemoto <anemo@mba.ocn.ne.jp>
125
126         * sysdeps/mips/dl-machine.h (RTLD_START): Do not use nested .end.
127
128 2004-04-12  Ulrich Drepper  <drepper@redhat.com>
129
130         * rt/Makefile (tests): Add tst-timer3.
131         * rt/tst-timer3.c: New file.  By Roland McGrath.
132
133 2004-04-08  Ulrich Drepper  <drepper@redhat.com>
134
135         * rt/tst-mqueue3.c: New file.
136         * rt/Makefile (tests): Add tst-mqueue3.
137
138 2004-04-08  Jakub Jelinek  <jakub@redhat.com>
139
140         * rt/tst-mqueue1.c: New file.
141         * rt/tst-mqueue2.c: New file.
142         * rt/tst-mqueue4.c: New file.
143         * rt/Makefile (tests): Add tst-mqueue1, tst-mqueue2, tst-mqueue4.
144
145         * rt/Versions (librt): Add mq_*@@GLIBC_2.3.4.
146         * rt/Makefile (headers): Add mqueue.h and bits/mqueue.h.
147         (mq-routines): Set.
148         (librt-routines): Use it.
149         * rt/mqueue.h: New file.
150         * include/mqueue.h: New file.
151         * sysdeps/generic/bits/mqueue.h: New file.
152         * sysdeps/generic/mq_setattr.c: New file.
153         * sysdeps/generic/mq_getattr.c: New file.
154         * sysdeps/generic/mq_notify.c: New file.
155         * sysdeps/generic/mq_close.c: New file.
156         * sysdeps/generic/mq_send.c: New file.
157         * sysdeps/generic/mq_unlink.c: New file.
158         * sysdeps/generic/mq_receive.c: New file.
159         * sysdeps/generic/mq_timedreceive.c: New file.
160         * sysdeps/generic/mq_timedsend.c: New file.
161         * sysdeps/generic/mq_open.c: New file.
162         * sysdeps/unix/sysv/linux/bits/local_lim.h (MQ_PRIO_MAX): Define.
163         * sysdeps/unix/sysv/linux/bits/mqueue.h: New file.
164         * sysdeps/unix/sysv/linux/syscalls.list: Add mq_timedsend,
165         mq_timedreceive and mq_setattr.
166         * sysdeps/unix/sysv/linux/mq_getattr.c: New file.
167         * sysdeps/unix/sysv/linux/mq_notify.c: New file.
168         * sysdeps/unix/sysv/linux/mq_close.c: New file.
169         * sysdeps/unix/sysv/linux/mq_send.c: New file.
170         * sysdeps/unix/sysv/linux/mq_unlink.c: New file.
171         * sysdeps/unix/sysv/linux/mq_receive.c: New file.
172         * sysdeps/unix/sysv/linux/mq_open.c: New file.
173
174 2004-04-09  Andreas Schwab  <schwab@suse.de>
175
176         * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL): Move
177         LOAD_ARGS_##nr up front and add LOAD_REGS_##nr.
178         (LOAD_ARGS_0, LOAD_ARGS_1, LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4)
179         (LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
180         variables.
181         (LOAD_REGS_0, LOAD_REGS_1, LOAD_REGS_2, LOAD_REGS_3, LOAD_REGS_4)
182         (LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
183         syscall argument registers.
184
185         * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL): Add
186         LOAD_REGS_##nr.
187         (LOAD_ARGS_0, LOAD_ARGS_1, LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4)
188         (LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
189         variables.
190         (LOAD_REGS_0, LOAD_REGS_1, LOAD_REGS_2, LOAD_REGS_3, LOAD_REGS_4)
191         (LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
192         syscall argument registers.
193
194 2004-04-09  Andreas Schwab  <schwab@suse.de>
195
196         * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Add
197         LOAD_REGS_##nr.
198         (LOAD_ARGS_0, LOAD_ARGS_1, LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4)
199         (LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
200         variables.
201         (LOAD_REGS_0, LOAD_REGS_1, LOAD_REGS_2, LOAD_REGS_3, LOAD_REGS_4)
202         (LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
203         syscall argument registers.
204
205 2004-04-09  Thorsten Kukuk  <kukuk@suse.de>
206
207         * sysdeps/s390/ffs.c: Don't add ffsl weak alias on s390x.
208
209 2004-04-09  Steven Munroe  <sjmunroe@us.ibm.com>
210
211         * sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: New file.
212
213 2004-04-08  Ulrich Drepper  <drepper@redhat.com>
214
215         * po/nl.po: Update from translation team.
216
217 2004-04-04  Ulrich Drepper  <drepper@redhat.com>
218
219         * math/test-tgmath.c: Declare compile_testl inly if we will define it.
220
221 2004-04-03  Ulrich Drepper  <drepper@redhat.com>
222
223         * sysdeps/powerpc/powerpc64/ffsll.c: New file.
224
225         * string/test-ffs.c: Also test ffsl and ffsll.
226
227         * sysdeps/powerpc/ffs.c: Don't define ffsl for ppc64.
228
229         * sysdeps/powerpc/powerpc64/bits/atomic.h: Never use matching
230         constraints for asm mem parameters.
231         * sysdeps/powerpc/bits/atomic.h: Likewise.
232
233         * sysdeps/powerpc/elf/libc-start.c: No need for a separate
234         function for __aux_init_cache.
235
236         * inet/test-ifaddrs.c: Fight warnings.
237
238         * argp/argp-help.c: Fight warnings.
239
240         * include/time.h: Declare __difftime.
241
242         * sysdeps/unix/sysv/linux/internal_statvfs.c: Restructure to avoid
243         duplication in 64-bit version.
244         * sysdeps/unix/sysv/linux/wordsize-64/internal_statvfs64.c: New file.
245
246 2004-04-03  Andreas Jaeger  <aj@suse.de>
247
248         * nis/nss-nis.c: Include <string.h> for strncmp.
249
250 2004-03-30  H.J. Lu  <hongjiu.lu@intel.com>
251
252         * Makeconfig (link-libc-static): Use $(static-gnulib) instead
253         of $(gnulib).
254         (libgcc_eh): New variable.
255         (gnulib): Use it variable.
256         (static-gnulib): New variable.
257         * Makerules (LDLIBS-c.so): Use $(static-gnulib) instead of $(gnulib).
258         * config.make.in (have-as-needed): New variable.
259         * configure.in: Check if linker supports --as-needed.
260
261 2004-04-02  Ulrich Drepper  <drepper@redhat.com>
262
263         * sysdeps/unix/sysv/linux/internal_statvfs64.c: New file.
264         * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
265         Add internal_statvfs64.
266         * sysdeps/unix/sysv/linux/internal_statvfs.c: Allow to be used to
267         compile 64bit version.
268         * sysdeps/unix/sysv/linux/statvfs64.c: Use __fstatfs64 and skip
269         compatibility code if __ASSUME_STATFS64 is defined.
270         * sysdeps/unix/sysv/linux/fstatvfs64.c: Likewise.
271
272         * sysdeps/unix/sysv/linux/statfs64.c: Don't add __no_statfs64 if
273         __ASSUME_STATFS64 != 0.
274
275 2004-04-02  Thorsten Kukuk  <kukuk@firun.suse.de>
276
277         * nis/nss_nis/nis-ethers.c (saveit): Fix return codes in error case.
278         * nis/nss_nis/nis-initgroups.c (saveit): Likewise.
279         * nis/nss_nis/nis-proto.c (saveit): Likewise.
280         * nis/nss_nis/nis-rpc.c (saveit): Likewise.
281         * nis/nss_nis/nis-service.c (saveit): Likewise.
282
283 2004-04-02  Jakub Jelinek  <jakub@redhat.com>
284
285         * nis/nss: Add SERVICES_AUTHORITATIVE.
286         * nis/nss-nis.h (NSS_FLAG_SET, NSS_FLAG_NETID_AUTHORITATIVE,
287         NSS_FLAG_SERVICES_AUTHORITATIVE): Define.
288         (_nis_default_nss_flags, _nis_check_default_nss): New decls.
289         (_nis_default_nss): New inline.
290         * nis/nss-nis.c: Include ctype.h, stdio.h and stdio_ext.h.
291         (_nis_default_nss_flags, default_nss): New variables.
292         (_nis_check_default_nss): New function.
293         * nis/nss_nis/nis-initgroups.c: Don't include stdio.h and
294         stdio_ext.h.
295         (check_default_nss, default_nss): Move to nss-nis.c.
296         (init): Removed.
297         (_nss_nis_initgroups_dyn): Use _nis_default_nss ().
298         * nis/nss_nis/nis-services.c (_nss_nis_getservbyname_r): If
299         NSS_FLAG_SERVICES_AUTHORITATIVE and services.byservicename lookup
300         fails, return immediately.
301
302 2004-04-01  Roland McGrath  <roland@redhat.com>
303
304         * elf/tst-execstack.c (do_test): Make F static.
305
306 2004-04-01  Ulrich Drepper  <drepper@redhat.com>
307
308         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Use
309         __sigprocmask not sigprocmask.
310         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
311         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
312
313         * include/string.h: Add libc_hidden_builtin_proto for memcmp.
314         * sysdeps/generic/memcmp.c: Add libc_hidden_builtin_def.
315         * sysdeps/i386/memcmp.S: Likewise.
316         * sysdeps/i386/i686/memcmp.S: Likewise.
317         * sysdeps/ia64/memcmp.S: Likewise.
318         * sysdeps/sparc/sparc64/memcmp.S: Likewise.
319
320         * sysdeps/unix/sysv/linux/sigprocmask.c: Include <string.h>.
321         * time/mktime.c: Likewise.
322         * misc/getpass.c: Likewise.
323
324         * time/difftime.c (__difftime): New renamed.  Make old name alias.
325         Use __difftime in recursive call.
326
327         * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Use
328         __tcgetattr() instead of tcgetattr().
329
330         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S [SHARED]:
331         Use __GI_exit.
332
333         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S [SHARED]: Use
334         __GI__exit.
335
336         * sysdeps/powerpc/fpu/bits/mathinline.h: Add __signbitf and
337         __signbit inlines.
338
339         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Use
340         __sigprocmask not sigprocmask.
341         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
342         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
343
344         * elf/elf.h: Define more ppc64 specific dynamic tags.
345
346 2004-04-01  Jakub Jelinek  <jakub@redhat.com>
347
348         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): If protocol
349         is NULL, instead of trying yp_match (name/tcp), yp_match (name/udp),
350         yp_all, try yp_match (name), yp_all.
351
352 2004-04-01  Ulrich Drepper  <drepper@redhat.com>
353
354         * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add handling for
355         ignored entries.  Ignore AT_IGNOREPPC.
356
357 2004-03-31  Andreas Jaeger  <aj@suse.de>
358
359         * libio/fileops.c (new_do_write): Return _IO_size_t to make 64-bit
360         clean.
361
362 2004-03-31  Ulrich Drepper  <drepper@redhat.com>
363
364         * locale/programs/localedef.c (construct_output_path): Remove
365         remnants of CEN locale names.
366
367 2004-03-30  Thorsten Kukuk  <kukuk@suse.de>
368
369         * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Add IUTF8.
370         * sysdeps/unix/sysv/linux/bits/termios.h: Likewise.
371         * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise.
372         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
373         * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
374
375 2004-03-30  Richard Henderson  <rth@redhat.com>
376
377         * sysdeps/alpha/remqu.S: Detect power-of-two special case.
378
379 2004-03-30  Ulrich Drepper  <drepper@redhat.com>
380
381         * sysdeps/generic/libc-start.c (LIBC_START_MAIN)
382         [HAVE_CLEANUP_JMP_BUF]: Call __nptl_deallocate_tsd.
383
384 2004-03-30  Jakub Jelinek  <jakub@redhat.com>
385
386         * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): If protocol
387         == NULL, try name/tcp and name/udp first before falling back into
388         the sequential scanning.  Use services.byname database for
389         sequential scanning.
390         (_nss_nis_getservbyport_r): Likewise.  Just allocate sizeof (int) * 3
391         chars for integer.
392
393         * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Convert
394         proto to host by order for snprintf.
395
396 2004-03-30  Ulrich Drepper  <drepper@redhat.com>
397
398         * nss/getent.c (services_keys): Don't implement lookups with
399         missing protocol using getservent loop, just pass NULL.
400
401         * sysdeps/unix/sysv/linux/i386/setgroups.c (setgroups): Avoid
402         comparison with limit if we can rely on the syscall being available.
403
404         * nis/nss_nis/nis-initgroups.c: Implement getting the information
405         from the netid.byname map if the system administrator allows this.
406         * nis/Makefile (distribute): Add nss.
407         * nis/nss: New file.
408
409         * grp/initgroups.c (initgroups): Limit the initial allocation to 64
410         entries to not allocate too much on systems with really high limits.
411
412 2004-03-30  Jakub Jelinek  <jakub@redhat.com>
413
414         * nis/nss_nis/nis-service.c (struct search_t): New type.
415         (dosearch): New function.
416         (_nss_nis_getservbyname_r): Use it.  Call yp_get_default_domain
417         unconditionally.
418         (_nss_nis_getservbyport_r): Likewise.
419
420 2004-03-29  Alexandre Oliva  <aoliva@redhat.com>
421
422         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Prepend GLIBC_ to
423         version names is SHLIB_COMPAT check.
424         * sysdeps/unix/sysv/linux/sched_setaffinity.c: Likewise.
425
426 2004-03-29  Ulrich Drepper  <drepper@redhat.com>
427
428         * nis/nss_nis/nis-rpc.c (saveit): Improve memory handling.  No need to
429         allocate multiple blocks.
430         (internal_nis_endrpcent): Adjust accordingly.
431         * nis/nss_nis/nis-proto.c (saveit): Improve memory handling.  No need
432         to allocate multiple blocks.
433         (internal_nis_endprotoent): Adjust accordingly.
434         * nis/nss_nis/nis-initgroups.c (saveit): Improve memory handling.  No
435         need to allocate multiple blocks.
436         (_nss_nis_initgroups_dyn): Adjust accordingly.
437         * nis/nss_nis/nis-ethers.c (saveit): Improve memory handling.  No need
438         to allocate multiple blocks.
439         (internal_nis_endetherent): Adjust accordingly.
440         * nis/nss_nis/nis-service.c (saveit): Improve memory handling.  No need
441         to allocate multiple blocks.
442         (internal_nis_endservent): Adjust accordingly.
443
444         * nss/getXXbyYY_r.c: Return 0 for NSS_STATUS_NOTFOUND.
445
446 2004-03-26  Thorsten Kukuk  <kukuk@suse.de>
447
448         * nis/nss_nis/nis-grp.c (_nss_nis_getgrnam_r): Don't
449         set errno if group does not exist.
450
451 2004-03-28  Ulrich Drepper  <drepper@redhat.com>
452
453         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
454         _SC_SIGQUEUE_MAX.
455
456 2004-03-26  Ulrich Drepper  <drepper@redhat.com>
457
458         * elf/dl-caller.c: New file.
459         * include/caller.h: New file.
460         * Makefile (distribute): Add include/caller.h.
461         * elf/Makefile (dl-routines): Add dl-caller.
462         * elf/dl-load.c (_dl_map_object_from_fd): Record l_text_end.
463         * elf/dl-open.c (check_libc_caller): Removed.
464         (dl_open_worker): Use __check_caller instead.
465         * elf/rtld.c (_rtld_global_ro): Initialize _dl_check_caller.
466         (_dl_start_final): Record l_text_end for ld.so map.
467         (dl_main): Record l_text_end for main object and vdso.
468         * include/link.h (struct link_map): Add l_text_end field.
469         * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add
470         _dl_check_caller field.
471         Define enum allowmask.  Add declaration of _dl_check_caller.
472         * sysdeps/unix/sysv/linux/dl-execstack.c: Also use __check_caller test.
473
474 2004-03-26  Richard Henderson  <rth@redhat.com>
475
476         * sysdeps/alpha/Makefile <gnulib> (sysdep_routines): Merge divrem
477         variable, add unsigned variants.
478         * sysdeps/alpha/divrem.h: Remove file.
479         * sysdeps/alpha/div_libc.h: New file.
480         * sysdeps/alpha/divl.S: Rewrite from scratch.
481         * sysdeps/alpha/reml.S: Likewise.
482         * sysdeps/alpha/divq.S: Likewise.
483         * sysdeps/alpha/remq.S: Likewise.
484         * sysdeps/alpha/divlu.S: New file.
485         * sysdeps/alpha/remlu.S: New file.
486         * sysdeps/alpha/divqu.S: New file.
487         * sysdeps/alpha/remqu.S: New file.
488
489 2004-03-26  Ulrich Drepper  <drepper@redhat.com>
490
491         * elf/dl-open.c (check_libc_caller): Fix typo.
492
493 2004-03-26  Jakub Jelinek  <jakub@redhat.com>
494
495         * elf/tst-dlmodcount.c: Include stddef.h and stdlib.h.
496
497 2003-03-25  Richard Henderson  <rth@redhat.com>
498
499         * sysdeps/alpha/backtrace.c: New file.
500
501 2004-03-25  Ulrich Drepper  <drepper@redhat.com>
502
503         * iconvdata/utf-7.c: Remove inline from isdirect, isxdirect, and
504         isxbase64.
505
506 2004-03-25  Richard Henderson  <rth@redhat.com>
507
508         * sysdeps/generic/strtol_l.c (__strtol_ul_max_tab,
509         __strtol_ull_max_tab, __strtol_ull_rem_tab, __strtol_ul_rem_tab,
510         cutoff_tab, cutlim_tab, jmax_tab): New.
511         (__strtol_l): Use them to avoid runtime division.
512
513 2004-03-24  Roland McGrath  <roland@redhat.com>
514
515         * Makerules ($(common-objpfx)shlib.lds): Don't use \n in rhs of sed
516         substitutions; the semicolon terminators are enough for ld anyway.
517
518         * elf/dl-deps.c (_dl_map_object_deps): Use alloca instead of
519         dynamically sized auto array in function already using alloca.
520         * locale/programs/ld-ctype.c (ctype_output): Likewise.
521         * locale/programs/ld-time.c (time_output): Likewise.
522         * elf/dl-misc.c (_dl_debug_vdprintf): Use macro instead of const for
523         IOV array size.
524         * locale/programs/charmap.c (charmap_read): Avoid alloca (or strdupa)
525         when also using dynamically-sized auto array.
526         * locale/programs/locfile.c (locfile_read): Likewise.
527         * locale/programs/repertoire.c (repertoire_read): Likewise.
528         * nis/nis_print_group_entry.c (nis_print_group_entry): Likewise.
529         * locale/programs/locarchive.c (enlarge_archive): Likewise.
530         * posix/annexc.c (check_header): Likewise.
531
532         * iconv/gconv_int.h (norm_add_slashes): Don't handle null SUFFIX.
533         strlen ("") gets optimized away just as well.
534         * intl/loadmsgcat.c (_nl_init_domain_conv): Update caller.
535         * wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): Likewise.
536
537         * Makefile ($(objpfx)c++-types-check.out): Reduce duplication in
538         defining this target.  Also elide -Wstrict-prototypes from CFLAGS.
539
540 2004-03-24  Ulrich Drepper  <drepper@redhat.com>
541
542         * stdio-common/vfscanf.c [!COMPILE_WSCANF] (TOLOWER): Cast first
543         parameter to unsigned char.
544         * sysdeps/generic/strcasestr.c [_LIBC] (TOLOWER): Likewise.
545
546 2004-03-24  Jakub Jelinek  <jakub@redhat.com>
547
548         * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Clear the rest of retval,
549         not just one limb if RETURN_LIMB_SIZE > 2.  Fix shifting up if
550         RETURN_LIMB_SIZE > 2.
551
552         * stdio-common/printf_fp.c (__printf_fp): For IEEE quad long double
553         on 32-bit architectures reserve 8 limbs instead of 4.
554
555 2004-03-23  Jakub Jelinek  <jakub@redhat.com>
556
557         * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_pread, __NR_pwrite):
558         Define to __NR_p{read,write}64 if not defined.
559         * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread,
560         __NR_pwrite): Define to __NR_p{read,write}64 if not defined instead
561         of defining it the other way around.
562         * sysdeps/unix/sysv/linux/alpha/syscalls.list: Move common syscalls
563         for 64bit arches to sysdeps/unix/sysv/linux/wordsize-64/syscalls.list.
564         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
565         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
566         * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
567         * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
568         * sysdeps/unix/sysv/linux/alpha/pread64.c: Removed.
569         * sysdeps/unix/sysv/linux/alpha/getrlimit64.c: Removed.
570         * sysdeps/unix/sysv/linux/alpha/glob64.c: Removed.
571         * sysdeps/unix/sysv/linux/alpha/truncate64.c: Removed.
572         * sysdeps/unix/sysv/linux/alpha/xstat64.c: Removed.
573         * sysdeps/unix/sysv/linux/alpha/pwrite64.c: Removed.
574         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: Removed.
575         * sysdeps/unix/sysv/linux/alpha/mmap64.c: Removed.
576         * sysdeps/unix/sysv/linux/alpha/fxstat64.c: Removed.
577         * sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Removed.
578         * sysdeps/unix/sysv/linux/alpha/ftruncate64.c: Removed.
579         * sysdeps/unix/sysv/linux/alpha/sendfile64.c: Removed.
580         * sysdeps/unix/sysv/linux/alpha/lxstat64.c: Removed.
581         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: Removed.
582         * sysdeps/unix/sysv/linux/alpha/statfs64.c: Removed.
583         * sysdeps/unix/sysv/linux/alpha/fstatfs64.c: Removed.
584         * sysdeps/unix/sysv/linux/s390/s390-64/pread64.c: Removed.
585         * sysdeps/unix/sysv/linux/s390/s390-64/getrlimit64.c: Removed.
586         * sysdeps/unix/sysv/linux/s390/s390-64/glob64.c: Removed.
587         * sysdeps/unix/sysv/linux/s390/s390-64/readdir64_r.c: Removed.
588         * sysdeps/unix/sysv/linux/s390/s390-64/truncate64.c: Removed.
589         * sysdeps/unix/sysv/linux/s390/s390-64/xstat64.c: Removed.
590         * sysdeps/unix/sysv/linux/s390/s390-64/pwrite64.c: Removed.
591         * sysdeps/unix/sysv/linux/s390/s390-64/getdents64.c: Removed.
592         * sysdeps/unix/sysv/linux/s390/s390-64/readdir_r.c: Removed.
593         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Removed.
594         * sysdeps/unix/sysv/linux/s390/s390-64/readdir.c: Removed.
595         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: Removed.
596         * sysdeps/unix/sysv/linux/s390/s390-64/mmap64.c: Removed.
597         * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Removed.
598         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat64.c: Removed.
599         * sysdeps/unix/sysv/linux/s390/s390-64/setrlimit64.c: Removed.
600         * sysdeps/unix/sysv/linux/s390/s390-64/ftruncate64.c: Removed.
601         * sysdeps/unix/sysv/linux/s390/s390-64/getdents.c: Removed.
602         * sysdeps/unix/sysv/linux/s390/s390-64/lxstat64.c: Removed.
603         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: Removed.
604         * sysdeps/unix/sysv/linux/s390/s390-64/readdir64.c: Removed.
605         * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Removed.
606         * sysdeps/unix/sysv/linux/s390/s390-64/statfs64.c: Removed.
607         * sysdeps/unix/sysv/linux/s390/s390-64/fstatfs64.c: Removed.
608         * sysdeps/unix/sysv/linux/powerpc/powerpc64/glob64.c: Removed.
609         * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: Removed.
610         * sysdeps/unix/sysv/linux/powerpc/powerpc64/xstat64.c: Removed.
611         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: Removed.
612         * sysdeps/unix/sysv/linux/powerpc/powerpc64/fxstat64.c: Removed.
613         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: Removed.
614         * sysdeps/unix/sysv/linux/powerpc/powerpc64/lxstat64.c: Removed.
615         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: Removed.
616         * sysdeps/unix/sysv/linux/sparc/sparc64/pread64.c: Removed.
617         * sysdeps/unix/sysv/linux/sparc/sparc64/getrlimit64.c: Removed.
618         * sysdeps/unix/sysv/linux/sparc/sparc64/glob64.c: Removed.
619         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir64_r.c: Removed.
620         * sysdeps/unix/sysv/linux/sparc/sparc64/truncate64.c: Removed.
621         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat64.c: Removed.
622         * sysdeps/unix/sysv/linux/sparc/sparc64/pwrite64.c: Removed.
623         * sysdeps/unix/sysv/linux/sparc/sparc64/getdents64.c: Removed.
624         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir_r.c: Removed.
625         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir.c: Removed.
626         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: Removed.
627         * sysdeps/unix/sysv/linux/sparc/sparc64/mmap64.c: Removed.
628         * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat64.c: Removed.
629         * sysdeps/unix/sysv/linux/sparc/sparc64/setrlimit64.c: Removed.
630         * sysdeps/unix/sysv/linux/sparc/sparc64/ftruncate64.c: Removed.
631         * sysdeps/unix/sysv/linux/sparc/sparc64/sendfile64.c: Removed.
632         * sysdeps/unix/sysv/linux/sparc/sparc64/getdents.c: Removed.
633         * sysdeps/unix/sysv/linux/sparc/sparc64/lxstat64.c: Removed.
634         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: Removed.
635         * sysdeps/unix/sysv/linux/sparc/sparc64/readdir64.c: Removed.
636         * sysdeps/unix/sysv/linux/sparc/sparc64/statfs64.c: Removed.
637         * sysdeps/unix/sysv/linux/sparc/sparc64/fstatfs64.c: Removed.
638         * sysdeps/unix/sysv/linux/ia64/pread64.c: Removed.
639         * sysdeps/unix/sysv/linux/ia64/getrlimit64.c: Removed.
640         * sysdeps/unix/sysv/linux/ia64/glob64.c: Removed.
641         * sysdeps/unix/sysv/linux/ia64/readdir64_r.c: Removed.
642         * sysdeps/unix/sysv/linux/ia64/truncate64.c: Removed.
643         * sysdeps/unix/sysv/linux/ia64/xstat64.c: Removed.
644         * sysdeps/unix/sysv/linux/ia64/pwrite64.c: Removed.
645         * sysdeps/unix/sysv/linux/ia64/getdents64.c: Removed.
646         * sysdeps/unix/sysv/linux/ia64/readdir_r.c: Removed.
647         * sysdeps/unix/sysv/linux/ia64/lxstat.c: Removed.
648         * sysdeps/unix/sysv/linux/ia64/readdir.c: Removed.
649         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: Removed.
650         * sysdeps/unix/sysv/linux/ia64/mmap64.c: Removed.
651         * sysdeps/unix/sysv/linux/ia64/xstat.c: Removed.
652         * sysdeps/unix/sysv/linux/ia64/fxstat64.c: Removed.
653         * sysdeps/unix/sysv/linux/ia64/setrlimit64.c: Removed.
654         * sysdeps/unix/sysv/linux/ia64/ftruncate64.c: Removed.
655         * sysdeps/unix/sysv/linux/ia64/sendfile64.c: Removed.
656         * sysdeps/unix/sysv/linux/ia64/getdents.c: Removed.
657         * sysdeps/unix/sysv/linux/ia64/lxstat64.c: Removed.
658         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: Removed.
659         * sysdeps/unix/sysv/linux/ia64/readdir64.c: Removed.
660         * sysdeps/unix/sysv/linux/ia64/fxstat.c: Removed.
661         * sysdeps/unix/sysv/linux/ia64/statfs64.c: Removed.
662         * sysdeps/unix/sysv/linux/ia64/fstatfs64.c: Removed.
663         * sysdeps/unix/sysv/linux/x86_64/pread64.c: Removed.
664         * sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: Removed.
665         * sysdeps/unix/sysv/linux/x86_64/glob64.c: Removed.
666         * sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: Removed.
667         * sysdeps/unix/sysv/linux/x86_64/truncate64.c: Removed.
668         * sysdeps/unix/sysv/linux/x86_64/xstat64.c: Removed.
669         * sysdeps/unix/sysv/linux/x86_64/pwrite64.c: Removed.
670         * sysdeps/unix/sysv/linux/x86_64/getdents64.c: Removed.
671         * sysdeps/unix/sysv/linux/x86_64/readdir_r.c: Removed.
672         * sysdeps/unix/sysv/linux/x86_64/lxstat.c: Removed.
673         * sysdeps/unix/sysv/linux/x86_64/readdir.c: Removed.
674         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: Removed.
675         * sysdeps/unix/sysv/linux/x86_64/mmap64.c: Removed.
676         * sysdeps/unix/sysv/linux/x86_64/xstat.c: Removed.
677         * sysdeps/unix/sysv/linux/x86_64/fxstat64.c: Removed.
678         * sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: Removed.
679         * sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: Removed.
680         * sysdeps/unix/sysv/linux/x86_64/sendfile64.c: Removed.
681         * sysdeps/unix/sysv/linux/x86_64/getdents.c: Removed.
682         * sysdeps/unix/sysv/linux/x86_64/lxstat64.c: Removed.
683         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: Removed.
684         * sysdeps/unix/sysv/linux/x86_64/readdir64.c: Removed.
685         * sysdeps/unix/sysv/linux/x86_64/fxstat.c: Removed.
686         * sysdeps/unix/sysv/linux/x86_64/statfs64.c: Removed.
687         * sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: Removed.
688         * sysdeps/unix/sysv/linux/alpha/Implies: New file.
689         * sysdeps/unix/sysv/linux/alpha/getdents64.c: New file.
690         * sysdeps/unix/sysv/linux/s390/s390-64/Implies: New file.
691         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Implies: New file.
692         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: New file.
693         * sysdeps/unix/sysv/linux/sparc/sparc64/Implies: New file.
694         * sysdeps/unix/sysv/linux/sparc/sparc64/lxstat.c: New file.
695         * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: New file.
696         * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: New file.
697         * sysdeps/unix/sysv/linux/wordsize-64/statvfs64.c: New file.
698         * sysdeps/unix/sysv/linux/wordsize-64/fstatvfs64.c: New file.
699         * sysdeps/unix/sysv/linux/wordsize-64/pread64.c: New file.
700         * sysdeps/unix/sysv/linux/wordsize-64/fstatvfs.c: New file.
701         * sysdeps/unix/sysv/linux/wordsize-64/getrlimit64.c: New file.
702         * sysdeps/unix/sysv/linux/wordsize-64/glob64.c: New file.
703         * sysdeps/unix/sysv/linux/wordsize-64/readdir64_r.c: New file.
704         * sysdeps/unix/sysv/linux/wordsize-64/truncate64.c: New file.
705         * sysdeps/unix/sysv/linux/wordsize-64/xstat64.c: New file.
706         * sysdeps/unix/sysv/linux/wordsize-64/pwrite64.c: New file.
707         * sysdeps/unix/sysv/linux/wordsize-64/getdents64.c: New file.
708         * sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: New file.
709         * sysdeps/unix/sysv/linux/wordsize-64/lxstat.c: New file.
710         * sysdeps/unix/sysv/linux/wordsize-64/readdir.c: New file.
711         * sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c: New file.
712         * sysdeps/unix/sysv/linux/wordsize-64/mmap64.c: New file.
713         * sysdeps/unix/sysv/linux/wordsize-64/xstat.c: New file.
714         * sysdeps/unix/sysv/linux/wordsize-64/fxstat64.c: New file.
715         * sysdeps/unix/sysv/linux/wordsize-64/setrlimit64.c: New file.
716         * sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c: New file.
717         * sysdeps/unix/sysv/linux/wordsize-64/sendfile64.c: New file.
718         * sysdeps/unix/sysv/linux/wordsize-64/getdents.c: New file.
719         * sysdeps/unix/sysv/linux/wordsize-64/statvfs.c: New file.
720         * sysdeps/unix/sysv/linux/wordsize-64/lxstat64.c: New file.
721         * sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise64.c: New file.
722         * sysdeps/unix/sysv/linux/wordsize-64/readdir64.c: New file.
723         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: New file.
724         * sysdeps/unix/sysv/linux/wordsize-64/fxstat.c: New file.
725         * sysdeps/unix/sysv/linux/wordsize-64/statfs64.c: New file.
726         * sysdeps/unix/sysv/linux/wordsize-64/fstatfs64.c: New file.
727         * sysdeps/unix/sysv/linux/ia64/Implies: New file.
728         * sysdeps/unix/sysv/linux/x86_64/Implies: New file.
729
730 2004-03-22  Richard Henderson  <rth@redhat.com>
731
732         * sysdeps/alpha/s_fabs.S: Remove file.
733         * sysdeps/alpha/s_copysign.S: Remove file.
734
735 2004-03-22  Jakub Jelinek  <jakub@redhat.com>
736
737         * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c
738         (__getpagesize): Avoid warning about writing into read-only memory.
739
740         * string/Makefile (routines): Add xpg-strerror.
741         * string/string.h (strerror_r): If __USE_XOPEN2K but not __USE_GNU,
742         redirect strerror_r to __xpg_strerror_r.
743         * string/Versions (libc): Add __xpg_strerror_r@@GLIBC_2.3.4.
744         * sysdeps/generic/xpg-strerror.c: New file.
745         * sysdeps/mach/xpg-strerror.c: New file.
746
747 2004-03-22  Joseph S. Myers  <jsm@polyomino.org.uk>
748
749         * sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): Do not use
750         casts as lvalues.
751
752 2004-03-22  Andreas Jaeger  <aj@suse.de>
753
754         * elf/tst-dlmodcount.c (unload): Remove unused variable.
755
756         * misc/tst-mntent.c (main): Use tmpfile instead of tmpnam.
757
758 2004-03-20  Roland McGrath  <roland@frob.com>
759
760         * sysdeps/mach/hurd/dl-execstack.c: New file.
761
762 2004-03-20  Ulrich Drepper  <drepper@redhat.com>
763
764         * po/ca.po: Update from translation team.
765
766 2004-03-20  Andreas Jaeger  <aj@suse.de>
767
768         * sysdeps/unix/sysv/linux/sched_getaffinity.c
769         (__sched_getaffinity_old): Fix interface.
770         * sysdeps/unix/sysv/linux/sched_setaffinity.c
771         (__sched_setaffinity_old): Likewise.
772
773         * sysdeps/unix/sysv/linux/sched_setaffinity.c: Include <alloca.h>.
774
775 2004-03-17  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
776
777         * sysdeps/unix/sysv/linux/kernel-features.h
778         (__ASSUME_CLONE_THREAD_FLAGS ): Define for newer SH kernel.
779         (__ASSUME_TGKILL, __ASSUME_UTIMES): Likewise.
780         * sysdeps/unix/sysv/linux/sh/socket.S: Add unwind information.
781
782 2004-03-19  Ulrich Drepper  <drepper@redhat.com>
783
784         * time/tzfile.c (__tzfile_default): Correct setting of rule_stdoff
785         and rule_dstoff after reading the posixrules file.
786
787 2004-03-18  Ulrich Drepper  <drepper@redhat.com>
788
789         * malloc/malloc.c (__posix_memalign): Correct alignment check.
790         Reported by Don Heller <dheller@cse.psu.edu>.
791
792 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
793
794         * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Remove hwcap
795         variable and weak_extern for _dl_hwcap.
796         (_DL_HWCAP_TLS_MASK): Define.
797         (HWCAP_CHECK): Fix checking of non-platform hwcap bits.  Use
798         lib->osversion instead of cache_new->libs[middle].osversion.
799
800         * stdio-common/asprintf.c: Remove USE_IN_LIBIO conditionals.
801         * stdio-common/dprintf.c: Likewise.
802         * stdio-common/fprintf.c: Likewise.
803         * stdio-common/getline.c: Likewise.
804         * stdio-common/getw.c: Likewise.
805         * stdio-common/perror.c: Likewise.
806         * stdio-common/printf-prs.c: Likewise.
807         * stdio-common/printf.c: Likewise.
808         * stdio-common/printf_size.c: Likewise.
809         * stdio-common/psignal.c: Likewise.
810         * stdio-common/putw.c: Likewise.
811         * stdio-common/scanf.c: Likewise.
812         * stdio-common/snprintf.c: Likewise.
813         * stdio-common/sprintf.c: Likewise.
814         * stdio-common/sscanf.c: Likewise.
815         * stdio-common/tstgetln.c: Likewise.
816         * stdio-common/vfprintf.c: Likewise.
817
818 2004-03-18  Paul Eggert  <eggert@cs.ucla.edu>
819
820         * posix/getopt.h (__GNUC_PREREQ) [!defined __THROW]: Define
821         if not defined, fixing a typo (it used to be defined if
822         __GNUC__ was not defined).
823
824 2004-03-18  Ulrich Drepper  <drepper@redhat.com>
825
826         * posix/sched.h: Change sched_getaffinity and sched_setaffinity
827         interfaces: add new second parameter.
828         * sysdeps/generic/sched_getaffinity.c: Implement interface change.
829         * sysdeps/generic/sched_setaffinity.c: Likewise.
830         * sysdeps/unix/sysv/linux/sched_getaffinity.c: Likewise.  Add
831         compatibility interface.
832         * sysdeps/unix/sysv/linux/sched_setaffinity.c: Likewise.
833         * sysdeps/unix/sysv/linux/Versions: Add versions for changed
834         interfaces.
835
836 2004-03-18  Roland McGrath  <roland@redhat.com>
837
838         * manual/Makefile (stamp-summary): Use -k option to sort,
839         not traditional key selection syntax.
840         Reported by Jim Gifford <giffordj@linkline.com>.
841
842 2004-03-18  Jakub Jelinek  <jakub@redhat.com>
843
844         * elf/ldconfig.c: Include stdbool.h.
845
846 2004-03-18  Roland McGrath  <roland@redhat.com>
847
848         * elf/ldconfig.c (parse_conf_include): New function.
849         (parse_conf): Call it to parse lines starting with "include".
850         Remaining words are glob patterns for more config files to read.
851         Take additional bool argument to disable opt_chroot processing.
852         (main): Update caller.
853
854 2004-03-17  Ulrich Drepper  <drepper@redhat.com>
855
856         * sysdeps/unix/sysv/linux/ia64/ioperm.c (_iopl): Match EPERM error
857         the x86 code produces in case of mission permissions.
858         Patch by Bernd Schmidt <bernds@redhat.com>.
859
860         * resolv/netdb.h: Define AI_IDN_ALLOW_UNASSIGNED,
861         AI_IDN_USE_STD3_ASCII_RULES, NI_IDN_ALLOW_UNASSIGNED, and
862         NI_IDN_USE_STD3_ASCII_RULES.
863         * inet/getnameinfo.c (getnameinfo): Implement handling of
864         NI_IDN_ALLOW_UNASSIGNED and NI_IDN_USE_STD3_ASCII_RULES.
865         * sysdeps/posix/getaddrinfo.c (gaih_inet): Implement handling of
866         AI_IDN_ALLOW_UNASSIGNED and AI_IDN_USE_STD3_ASCII_RULES.
867
868 2004-03-17  Jakub Jelinek  <jakub@redhat.com>
869
870         * sysdeps/x86_64/hp-timing.h (HP_TIMING_NOW): Make asm volatile.
871
872 2004-03-16  Jakub Jelinek  <jakub@redhat.com>
873
874         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Spelling.
875         (JB_SIZE): Undefine before including __longjmp-common.S again.
876         * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Spelling.
877         (JB_SIZE): Undefine before including setjmp-common.S again.
878         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Spelling.
879         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Spelling.
880         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Spelling.
881         * sysdeps/powerpc/powerpc32/bsd-setjmp.S: Spelling.
882         * sysdeps/powerpc/sigjmp.c: Spelling.
883
884 2004-03-16  Ulrich Drepper  <drepper@redhat.com>
885
886         * include/ctype.h: For libc, define isdigit, isdigit_l, and
887         __isdigit_l as simple comparison macros.
888         * include/wctype.h: For libc, define iswdigit, iswdigit_l, and
889         __iswdigit_l as simple comparison macros.
890         * wctype/wcfuncs_l.c: #undef iswdigit and __iswdigit.
891
892 2004-03-15  Ulrich Drepper  <drepper@redhat.com>
893
894         * sysdeps/sparc/fpu/bits/mathinline.h: Restore missing #ifdef.
895         Patch by Richard Henderson.
896
897 2004-03-16  Jakub Jelinek  <jakub@redhat.com>
898
899         * sysdeps/generic/strtold_l.c (STRING_TYPE, STRTOLD, __STRTOLD,
900         __STRTOD, INTERNAL, INTERNAL1): Define, use them.
901         [! USE_WIDE_CHAR] (INTERNAL (__STRTOLD)): Add libc_hidden_def.
902
903         * inet/getnameinfo.c: Include stdlib.h.
904
905 2004-03-15  Richard Henderson  <rth@redhat.com>
906
907         * math/Makefile (headers): Add bits/huge_valf.h, bits/huge_vall.h,
908         and bits/inf.h.
909         * math/math.h: Include them.
910
911         * sysdeps/alpha/fpu/bits/mathdef.h: Remove INFINITY.
912         * sysdeps/arm/fpu/bits/mathdef.h: Likewise.
913         * sysdeps/generic/bits/mathdef.h: Likewise.
914         * sysdeps/i386/fpu/bits/mathdef.h: Likewise.
915         * sysdeps/ia64/fpu/bits/mathdef.h: Likewise.
916         * sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
917         * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
918         * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
919         * sysdeps/sh/sh4/fpu/bits/mathdef.h: Likewise.
920         * sysdeps/sparc/fpu/bits/mathdef.h: Likewise.
921         * sysdeps/x86_64/fpu/bits/mathdef.h: Likewise.
922
923         * sysdeps/arm/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
924         (HUGE_VALF, HUGE_VALL): Remove.
925         * sysdeps/ieee754/bits/huge_val.h: Likewise.
926         * sysdeps/sh/bits/huge_val.h: Likewise.
927
928         * sysdeps/generic/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
929         * sysdeps/generic/bits/huge_valf.h: New file.
930         * sysdeps/generic/bits/huge_vall.h: New file.
931         * sysdeps/generic/bits/inf.h: New file.
932         * sysdeps/ieee754/bits/huge_valf.h: New file.
933         * sysdeps/ieee754/bits/inf.h: New file.
934         * sysdeps/i386/bits/huge_val.h: Remove file.
935         * sysdeps/i386/bits/huge_vall.h: New file.
936         * sysdeps/ia64/bits/huge_val.h: Remove file.
937         * sysdeps/ia64/bits/huge_vall.h: New file.
938         * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: New file.
939         * sysdeps/m68k/bits/huge_val.h: Remove file.
940         * sysdeps/m68k/bits/huge_vall.h: New file.
941         * sysdeps/s390/bits/huge_val.h: Remove file.
942         * sysdeps/sh/sh4/fpu/bits/huge_val.h: Remove file.
943         * sysdeps/sparc/bits/huge_vall.h: New file.
944         * sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Remove file.
945         * sysdeps/sparc/sparc64/fpu/bits/huge_val.h: Remove file.
946
947         * sysdeps/ieee754/bits/nan.h (NAN): Use __builtin_nanf.
948         * sysdeps/mips/bits/nan.h (NAN): Likewise.
949
950 2004-03-15  Ulrich Drepper  <drepper@redhat.com>
951
952         * iconv/gconv_simple.c (__gconv_transform_utf8_internal): Use only
953         one copy of error handling code.
954
955         * stdio-common/vfscanf.c: Simplify error handling macros.  Use
956         direct locale access functions.
957
958         * sysdeps/generic/strcasestr.c (__strcasestr): Optimize use of
959         tolower function.
960
961 2004-03-13  Jakub Jelinek  <jakub@redhat.com>
962
963         * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Add const.
964         (handle_amd): New function.
965         (__sysconf): Handle _SC_LEVEL4_CACHE_LINESIZE here, not in
966         linux_sysconf.  Call handle_amd on AuthenticAMD.
967         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Likewise.
968
969 2004-03-14  Ulrich Drepper  <drepper@redhat.com>
970
971         * wcsmbs/mbsrtowcs.c: Just a wrapper around __mbsrtowcs_l.
972         * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Add real implementation here.
973
974         Make the non-_l functions wrappers around the _l functions.
975         * include/monetary.h: Declare __vstrmon_l.
976         * include/string.h: Add libc_hidden_proto for __strcoll_l and
977         __strxfrm_l.
978         * include/time.h: Define ptime_locale_status.  Declare
979         __strptime_internal.
980         * include/wchar.h: Add libc_hidden_proto for __wcscoll_l and
981         __wcsxfrm_l.
982         * stdlib/strfmon.c: Move the code to strfmon_l.c.  Add little
983         wrapper around __vstrfmon_l.
984         * stdlib/strfmon_l.c: Add real implementation.  Split into new
985         function __vstrfmon_l to allow calling it from strfmon.
986         * stdlib/strtod.c: Move real code to strtod_l.c and add wrapper.
987         * stdlib/strtod_l.c: Add real implementation.
988         * stdlib/strtof.c: Adjust to changed strtod.c.
989         * stdlib/strtof_l.c: Include strtod_l.c now.
990         * stdlib/strtold.c: New file.
991         * stdlib/strtold_l.c: Removed.
992         * string/strcoll.c: Move real code to strcoll_l.c: Add wrapper.
993         * string/strcoll_l.c: Add real implementation.
994         * string/strxfrm.c: Move real code to strxfrm_l.c: Add wrapper.
995         * string/strxfrm_l.c: Add real implementation.
996         * sysdeps/generic/strtol.c: Move real implementation to strtol_l.c.
997         Add wrappers.
998         * sysdeps/generic/strtol_l.c: Add real implementation.
999         * sysdeps/generic/strtold.c: Removed.
1000         * sysdeps/generic/strtold_l.c: New file.
1001         * sysdeps/generic/strtoll_l.c: Include strtol_l.c now.  Adjust
1002         #defines.
1003         * sysdeps/generic/strtoul_l.c: Likewise.
1004         * sysdeps/generic/strtoull_l.c: Likewise.
1005         * sysdeps/generic/wcstol_l.c: Likewise.
1006         * sysdeps/generic/wcstoll_l.c: Likewise.
1007         * sysdeps/generic/wcstoul_l.c: Likewise.
1008         * sysdeps/generic/wcstoull_l.c: Likewise.
1009         * sysdeps/ieee754/ldbl-128/strtold.c: Removed.
1010         * sysdeps/ieee754/ldbl-128/strtold_l.c: New file.
1011         * sysdeps/ieee754/ldbl-96/strtold.c: Removed.
1012         * sysdeps/ieee754/ldbl-96/strtold_l.c: New file.
1013         * sysdeps/m68k/strtold.c: Removed.
1014         * sysdeps/m68k/strtold_l.c: New file.
1015         * time/strftime.c: Move real code to strftime_l.c.  Add wrapper.
1016         * time/strftime_l.c: Add real implementation.
1017         * time/strptime.c: Move real code to strptime_l.c.  Add wrapper.
1018         * time/strptime_l.c: Add real implementation.
1019         * time/wcsftime.c: Simplify since only wrappers are defined in
1020         strftime.c.
1021         * time/wcsftime_l.c: Include strftime_l.c.
1022         * wcsmbs/wcscoll.c: Simplify since the file is not used by wcscoll_l.c
1023         anymore.
1024         * wcsmbs/wcscoll_l.c: Include strcoll_l.c.
1025         * wcsmbs/wcsxfrm.c: Simplify since the file is not used by wcsxfrm_l.c
1026         anymore.
1027         * wcsmbs/wcsxfrm_l.c: Include strxfrm_l.c.
1028         * wcsmbs/wcstod.c: Prepare to include new strtod.c.
1029         * wcsmbs/wcstod_l.c: Include strtod_l.c.
1030         * wcsmbs/wcstof.c: Prepare to include new strtof.c.
1031         * wcsmbs/wcstof_l.c: Include strtof_l.c.
1032         * wcsmbs/wcstold.c: Prepare to include new strtold.c.
1033         * wcsmbs/wcstold_l.c: Include strtold_l.c.
1034
1035         * locale/uselocale.c: Use _NL_CURRENT_LOCALE instead of __libc_tsd_get.
1036
1037         * sysdeps/generic/strcasecmp.c: Optimize a bit.  It's better to get
1038         a reference to the current locale and then use the _l functions.
1039         * sysdeps/generic/strncase.c: Likewise.
1040
1041 2004-03-11  Jeroen Dekkers  <jeroen@dekkers.cx>
1042
1043         * cppflags-iterator.mk: Change libof-$(cpp-src) to
1044         libof-$(notdir $(cpp-src)).
1045
1046 2004-03-13  Ulrich Drepper  <drepper@redhat.com>
1047
1048         * resolv/netdb.h (EAI_OVERFLOW): Define.
1049         (NI_IDN): Define.
1050         * inet/getnameinfo.c (getnameinfo): Return error in case argument
1051         buffers overflow.  Implement NI_IDN.
1052
1053 2004-03-12  Ulrich Drepper  <drepper@redhat.com>
1054
1055         * resolv/netdb.h: Define AI_CANONIDN.
1056         * sysdeps/posix/getaddrinfo.c: Implement AI_CANONIDN.
1057
1058 2004-03-12  Richard Henderson  <rth@redhat.com>
1059
1060         * sysdeps/unix/sysv/linux/alpha/select.S: Fix unwind.  Propagate
1061         oldvalue from CENABLE to CDISABLE.
1062
1063 2004-03-12  Ulrich Drepper  <drepper@redhat.com>
1064
1065         * sysdeps/unix/sysv/linux/x86_64/sysconf.c: New file.
1066
1067         * sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
1068
1069         * posix/getconf.c (vars): Add _SC_ values for cache information.
1070         * sysdeps/generic/bits/confname.h: Add _SC_* values for cache
1071         information.
1072         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Reorganize to
1073         allow yet another sysconf function to include the one in this file.
1074         * sysdeps/unix/sysv/linux/i386/sysconf.c: New file.
1075         * sysdeps/generic/sysconf.c: Add default handling for cache line info.
1076
1077 2004-03-11  Ulrich Drepper  <drepper@redhat.com>
1078
1079         * sysdeps/posix/sysconf.c (__sysconf): Add missing support for
1080         some _SC_* values.
1081
1082 2004-03-10  Chris Heath  <chris@heathens.co.nz>
1083
1084         * iconvdata/gconv.map: Add gconv_end (fixes memory leak).
1085
1086 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
1087
1088         * sysdeps/powerpc/powerpc32/__longjmp.S (JB_SIZE): Undefine before
1089         including __longjmp-common.S again.
1090         * sysdeps/powerpc/powerpc64/__longjmp.S (JB_SIZE): Likewise.
1091         * sysdeps/powerpc/powerpc32/setjmp.S (JB_SIZE): Undefine before
1092         including setjmp-common.S again.
1093         * sysdeps/powerpc/powerpc64/setjmp.S (JB_SIZE): Likewise.
1094         * sysdeps/powerpc/novmxsetjmp.h (__novmx__longjmp): Fix type of
1095         first argument in the prototype.
1096         * sysdeps/powerpc/longjmp.c (__vmx__longjmp, __vmx__libc_longjmp):
1097         Remove bogus semicolons.
1098
1099         * sysdeps/s390/dl-tls.h: Only add __tls_get_offset assembly if
1100         IS_IN_rtld.
1101         (__TLS_GET_ADDR): Use __tls_get_offset, not __tls_get_addr.
1102
1103 2004-03-11  Ulrich Drepper  <drepper@redhat.com>
1104
1105         * resolv/ns_ttl.c: Don't add ns_parse_ttl for libresolv.so.
1106
1107 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
1108
1109         * sysdeps/generic/errno.c: Include <dl-sysdep.h>.  Use
1110         RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
1111
1112         * elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
1113         points wrappers around the unified code.
1114
1115 2004-03-11  Richard Henderson  <rth@redhat.com>
1116
1117         * sysdeps/unix/sysv/linux/alpha/kernel_stat.h (kernel_stat64): New.
1118         (glibc21_stat): New.
1119         * sysdeps/unix/sysv/linux/alpha/fxstat.c: New file.
1120         * sysdeps/unix/sysv/linux/alpha/lxstat.c: New file.
1121         * sysdeps/unix/sysv/linux/alpha/xstat.c: New file.
1122         * sysdeps/unix/sysv/linux/alpha/xstatconv.c (__xstat_conv): Add
1123         code for _STAT_VER_GLIBC2_3_4.
1124         (__libc_missing_axp_stat64): New.
1125         * sysdeps/unix/sysv/linux/alpha/xstatconv.h: New file.
1126         * sysdeps/unix/sysv/linux/alpha/bits/stat.h (__ST_TIME): New.
1127         (_STAT_VER_GLIBC2_3_4, _STAT_VER_KERNEL64): New.
1128         (struct stat, struct stat64): Update to new format.
1129         (_STATBUF_ST_NSEC): New.
1130
1131 2004-03-11  Jakub Jelinek  <jakub@redhat.com>
1132
1133         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1134         (__novec_swapcontext): Branch to novec_* labels.
1135
1136 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
1137
1138         * posix/getopt.c (_): Don't define here for glibc.
1139
1140 2004-03-10  Jakub Jelinek  <jakub@redhat.com>
1141
1142         * include/libc-symbols.h [__ASSEMBLY__] (compat_text_section,
1143         compat_data_section): Define.
1144         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add
1145         attribute_compat_text_section.
1146         * sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise.
1147         * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob,
1148         __old_globfree): Likewise.
1149         * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown):
1150         Likewise.
1151         * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
1152         (__posix_fadvise64_l32): Likewise.
1153         * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise.
1154         * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
1155         (__posix_fadvise64_l32): Likewise.
1156         * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl):
1157         Likewise.
1158         * sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise.
1159         * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32):
1160         Likewise.
1161         * sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise.
1162         * hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise.
1163         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1164         (__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END.
1165         (__novec_swapcontext, __swapcontext_stub): Add compat_text_section.
1166         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
1167         (__makecontext_stub): Likewise.
1168         (__novec_makecontext): Likewise.  Fix name in END () to match
1169         function name.
1170         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
1171         (__setcontext): Use END instead of PSEUDO_END.
1172         (__novec_setcontext): Add compat_text_section.  Use END instead of
1173         PSEUDO_END, fix the name in END () to match function name.
1174         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1175         (__getcontext, __novec_getcontext): Use END instead of PSEUDO_END.
1176         (__novec_getcontext, __getcontext_stub): Add compat_text_section.
1177
1178 2004-03-10  Kaz Kojima  <kkojima@rr.iij4u.or.jp>
1179
1180         * sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate.
1181         (COPY_UNALIGNED_WORD): Remove cast used as lvalue.
1182
1183 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
1184
1185         * sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2.
1186
1187 2004-03-10  Richard Henderson  <rth@redhat.com>
1188
1189         * sysdeps/generic/errno.c: Disable versioning for rtld.
1190
1191         * sysdeps/generic/Makefile (elf/shared): Add unwind-pe.
1192         * sysdeps/generic/unwind-pe.c: New file.
1193         * sysdeps/generic/unwind-pe.h: Only prototypes for _LIBC without
1194         _LIBC_DEFINITIONS.
1195
1196 2004-03-10  Ulrich Drepper  <drepper@redhat.com>
1197
1198         * include/libc-symbols.h: Define attribute_compat_text_section and
1199         attribute_compat_data_section.
1200         * io/ftw.c: Mark compat code with attribute_compat_text_section.
1201         * libio/iofopncook.c: Likewise.
1202         * libio/oldfileops.c: Likewise.
1203         * libio/oldiofclose.c: Likewise.
1204         * libio/oldiofdopen.c: Likewise.
1205         * libio/oldiofgetpos.c: Likewise.
1206         * libio/oldiofgetpos64.c: Likewise.
1207         * libio/oldiofopen.c: Likewise.
1208         * libio/oldiofsetpos.c: Likewise.
1209         * libio/oldiofsetpos64.c: Likewise.
1210         * libio/oldiopopen.c: Likewise.
1211         * libio/oldpclose.c: Likewise.
1212         * libio/oldtmpfile.c: Likewise.
1213         * nptl/forward.c: Likewise.
1214         * nss/getXXbyYY_r.c: Likewise.
1215         * nss/getXXent_r.c: Likewise.
1216         * posix/tst-vfork1.c: Likewise.
1217         * stdlib/canonicalize.c: Likewise.
1218         * stdlib/old_atexit.c: Likewise.
1219         * sysdeps/generic/glob.c: Likewise.
1220         * sysdeps/posix/posix_fallocate64.c: Likewise.
1221         * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
1222         * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
1223         * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise.
1224         * sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
1225         * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
1226         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
1227         * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise.
1228         * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise.
1229         * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
1230         * sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
1231         * sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
1232         * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
1233         * posix/regexec.c: Likewise.
1234
1235         * sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4
1236         should be the default symbol. Having none misses the point.
1237
1238 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
1239
1240         * stdlib/qsort.c (_quicksort): Initialize first stack element [BZ #16].
1241
1242 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
1243
1244         * posix/regexec.c (regexec): Return with error on unknown eflags.
1245         Replace weak_alias with versioned_symbol.
1246         (__compat_regexec): New.
1247         * posix/Versions (libc): Add regexec@GLIBC_2.3.4.
1248
1249 2004-03-09  Richard Henderson  <rth@redhat.com>
1250
1251         * math/math.h (isgreater, isgreaterequal, isless, islessequal,
1252         islessgreater, isunordered): Use builtins if available.
1253         * sysdeps/i386/fpu/bits/mathinline.h: Don't define via builtins.
1254         * sysdeps/m68k/fpu/bits/mathinline.h: Likewise.
1255         * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1256         * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
1257         * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1258         * sysdeps/alpha/fpu/bits/mathinline.h (isgreater, isgreaterequal,
1259         isless, islessequal, islessgreater): Remove; use default.
1260         (isunordered): Convert inputs to double.
1261
1262 2004-02-09  Jakub Jelinek  <jakub@redhat.com>
1263
1264         * posix/Makefile (tests): Add tst-vfork2.
1265         * posix/tst-vfork1.c (do_test): Fix comment.
1266         * posix/tst-vfork2.c: New test.
1267
1268 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
1269
1270         * elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
1271         derefernce in error message.  Pretty printing.
1272
1273         * po/nl.po: Update from translation team.
1274
1275 2004-03-08  Andreas Schwab  <schwab@suse.de>
1276
1277         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't truncate
1278         sysinfo pointer value.
1279
1280 2004-03-08  Paul Eggert  <eggert@cs.ucla.edu>
1281
1282         Merge from gnulib.  We now assume C89 or better.
1283         * posix/getopt1.c (const): Remove.
1284         * posix/getopt.c (const): Likewise.
1285         * posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
1286         _getopt_long_only_r, main): Use prototypes, not old-style definitions.
1287         * posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
1288         _getopt_internal, getopt, main): Likewise.
1289         * posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
1290         * posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
1291         Include <string.h> regardless.  No need for <strings.h>.
1292         [!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
1293         (_): Define to gettext always.
1294         (my_index): Remove: all uses changed to strchr.
1295         (strlen): Remove declaration.
1296         * posix/getopt.h (struct option.name): Always const char *.
1297
1298 2004-03-08  Marcus Brinkmann  <marcus@gnu.org>
1299
1300         * posix/getopt.h (_getopt_internal): Move to ...
1301         * posix/getopt_int.h: ... here.  New file.
1302         * include/getopt_int.h: New file.
1303         * include/getopt.h: Remove libc_hidden_proto for getopt_long
1304         and getopt_long_only.
1305         * posix/getopt1.c: Include "getopt_int.h".  Remove
1306         libc_hidden_def for getopt_long and getopt_long_only.
1307         (_getopt_long_r, _getopt_long_only_r): New functions.
1308         * posix/getopt.c: Include "getopt_int.h".
1309         (__getopt_initialized): Variable removed.
1310         (nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
1311         Static variables removed.
1312         (nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
1313         USE_NONOPTION_FLAGS]: Static variables removed.
1314         (getopt_data): New static variable.
1315         (SWAP_FLAGS): Use d->__nonoption_flags_len instead
1316         nonoption_flags_len.
1317         (exchange): Add new argument D of type struct getopt_data *.
1318         Replace optind with d->optind, optarg with d->optarg, opterr with
1319         d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
1320         first_nonopt with d->__first_nonopt, last_nonopt with
1321         d->__last_nonopt, d->ordering with d->__ordering,
1322         d->posixly_correct with d->__posixly_correct (which is now an
1323         int instead a string, so fix users), nonoption_flags_len
1324         with d->__nonoption_flags_len, nonoption_flags_max_len with
1325         d->__nonoption_flags_max_len.
1326         (_getopt_initialize): Likewise.
1327         (_getopt_internal): Rename to ...
1328         (_getopt_internal_r): ... this.  Also add new argument D of type
1329         struct getopt_data * and use of members of D rather than global or
1330         static variables as described for exchange() above.  Add new argument
1331         to invocations of _getopt_initialize and exchange.
1332         (_getopt_internal): Reimplement in terms of _getopt_internal_r.
1333         * argp/argp-parse.c: Include <getopt_int.h>.
1334         [_LIBC]: Do not include <bits/libc-lock.h>.
1335         [!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
1336         [!_LIBC] (_argp_hang): Make static.
1337         (getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
1338         (_argp_unlock_xxx): Remove.
1339         (parser_init): Do not use LOCK_GETOPT.
1340         (parser_finalize): Do not use UNLOCK_GETOPT.
1341         (struct parser): New member OPT_DATA.
1342         (parser_init): Initialize parser->opt_data.  Use
1343         parser->opt_data.opterr instead of opterr.
1344         (parser_parse_opt): Use parser->opt_data.optarg instead optarg.
1345         (parser_parse_next): Likewise.  Use parser->opt_data.optind
1346         instead optind.  Use parser->opt_data.optopt instead of optopt.
1347         Call _getopt_long_only_r and _getopt_long_r instead of
1348         getopt_long_only and getopt_long, and pass the extra argument.
1349
1350 2004-03-09  Ulrich Drepper  <drepper@redhat.com>
1351
1352         * iconv/gconv_db.c: Don't define lock as static.  Rename to
1353         __gconv_lock and export from the file.
1354         * iconv/gconv_int.h: Declare __gconv_lock.
1355         * libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock
1356         before __gconv_release_step calls.
1357         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1358
1359         * iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change.
1360
1361         * posix/Makefile (tests): Add tst-vfork1.
1362         * posix/tst-vfork1.c: New file.
1363
1364 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
1365
1366         * sysdeps/i386/dl-machine.h: Define ARCH_FIXUP_ATTRIBUTE and use
1367         it in the fixup function declarations.
1368         * elf/dl-runtime.c: If ARCH_FIXUP_ATTRIBUTE is not defined,
1369         provide dummy definition.  Use macro in fixup function
1370         definitions.
1371
1372         * sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
1373         RESTORE_PID are defined, use it.
1374         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1375
1376         * sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
1377
1378         * Makerules: Use extra-modules.mk if modules-names is defined.
1379         * extra-modules.mk: New file.
1380         * dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
1381         * elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
1382         * csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
1383         compiler.
1384         * Makefile (distribute): Add symbol-hacks.h and extra-modules.mk.
1385         * sysdeps/generic/symbol-hacks.h: New file.
1386         * sysdeps/wordsize-32/symbol-hacks.h: New file.
1387         * sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
1388         __moddi3, __udivdi3, and __umoddi3.
1389         * include/libc-symbols.h: Include <symbol-hacks.h>.
1390
1391 2004-03-08  Jeroen Dekkers  <jeroen@dekkers.cx>
1392
1393         * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
1394
1395         * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
1396         Don't use INTUSE with _dl_signal_error.
1397
1398 2004-03-08  Ulrich Drepper  <drepper@redhat.com>
1399
1400         * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
1401         Don't use INTUSE with _dl_signal_error.
1402
1403 2004-03-08  Richard Henderson  <rth@redhat.com>
1404
1405         * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
1406         in name.
1407
1408 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
1409
1410         * config.h.in: Add entry for HAVE_LIBIDN.
1411         * configure.in: If libidn add-on present define HAVE_LIBIDN.
1412         * Versions.def: Add entry for libcidn.
1413
1414 2004-03-07  Simon Josefsson  <jas@extundo.com>
1415
1416         * resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
1417         [__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
1418         * sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
1419         and define IDNA_SUCCESS.
1420         (gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
1421         (getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
1422         All changes only applicable when glibc is compiled with the libidn
1423         add-on.
1424
1425 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
1426
1427         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
1428         _dl_lookup_symbol_x not _dl_lookup_symbol.
1429
1430         * sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
1431         _dl_hwcap into _rtld_global_ro.
1432         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
1433         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
1434         * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
1435         * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
1436         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
1437         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
1438         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
1439         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1440         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
1441         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1442
1443 2004-03-07  Andreas Schwab  <schwab@suse.de>
1444
1445         * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
1446
1447 2004-03-07  Andreas Jaeger  <aj@suse.de>
1448
1449         * iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
1450         * iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
1451         * iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
1452         * iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
1453         * iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
1454
1455 2004-03-07  Ulrich Drepper  <drepper@redhat.com>
1456
1457         * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
1458         _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
1459         dl-procinfo.c from _rtld_global to _rtld_global_ro.
1460         * elf/rtld.c: Adjust initializer for _rtld_global_ro.
1461         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
1462         * elf/dl-libc.c: Likewise.
1463         * elf/dl-load.c: Likewise.
1464         * sysdeps/i386/dl-procinfo.h: Likewise.
1465         * sysdeps/i386/i686/hp-timing.h: Likewise.
1466         * sysdeps/ia64/hp-timing.h: Likewise.
1467         * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
1468         * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
1469         * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
1470         * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
1471         * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
1472         * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
1473         * string/test-string.h: Define GLRO.
1474
1475 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
1476
1477         * elf/dl-lookup.c: We don't need for specialized lookup functions.
1478         Combining the functionality does not slow down relocation processing,
1479         it might even speed it up a little.
1480         * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
1481         Add only one function pointer to rtlf_global_ro.
1482         * elf/do-lookup.h: Replace #ifs with ifs.
1483         * elf/dl-libc.c: Adjust _dl_lookup_* callers.
1484         * elf/dl-reloc.c: Likewise.
1485         * elf/dl-runtime.c: Likewise.
1486         * elf/dl-sym.c: Likewise.
1487         * elf/rtld.c: Likewise.  Adjust _rtld_global_ro initialization.
1488
1489 2004-03-06  Richard Henderson  <rth@redhat.com>
1490
1491         * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
1492         __rtld_global_attribute__): Undef after use.
1493         (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
1494         if available.
1495
1496         * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
1497         * sysdeps/alpha/Implies: Add alpha/soft-fp.
1498         * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
1499         * sysdeps/alpha/Subdirs: New file.
1500         * sysdeps/alpha/soft-fp/Makefile: New file.
1501         * sysdeps/alpha/soft-fp/Versions: New file.
1502         * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
1503         * sysdeps/alpha/soft-fp/ots_add.c: New file.
1504         * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
1505         * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
1506         * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
1507         * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
1508         * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
1509         * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
1510         * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
1511         * sysdeps/alpha/soft-fp/ots_div.c: New file.
1512         * sysdeps/alpha/soft-fp/ots_mul.c: New file.
1513         * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
1514         * sysdeps/alpha/soft-fp/ots_sub.c: New file.
1515
1516 2004-03-06  Ulrich Drepper  <drepper@redhat.com>
1517
1518         * configure.in: Recognize --enable-bind-now.
1519         * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
1520         in ld.so.
1521         * Makerules (LDFLAGS-c.so): Add -z now if so configured.
1522         * elf/Makefile ($(objpfx)ld.so): Likewise.
1523         * config.make.in (bind-now): New definition.
1524
1525         * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
1526         * elf/rtld.c (print_statistics): Likewise.
1527
1528         * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
1529         They are the same in both places.
1530         * elf/dl-profile.c: Likewise.
1531         * elf/rtld.c: Likewise.
1532         * sysdeps/generic/ldsodefs.h: Likewise.
1533         * elf/dl-support.c: Define _dl_profile_output variable.  Initialize it.
1534
1535 2004-03-05  Ulrich Drepper  <drepper@redhat.com>
1536
1537         * elf/Versions: Remove functions which are not exported anymore.
1538         * dlfcn/dlerror.c: Call ld.so functions through GLSO.
1539         * dlfcn/dlinfo.c: Likewise.
1540         * elf/dl-close.c: Likewise.
1541         * elf/dl-libc.c: Likewise.
1542         * elf/dl-open.c: Likewise.
1543         * elf/dl-sym.c: Likewise.
1544         * sysdeps/generic/libc-start.c: Likewise.
1545         * elf/dl-debug.c: Remove *_internal definition.  Don't use INTUSE for
1546         functions which are not exported anymore.
1547         * elf/dl-deps.c: Likewise.
1548         * elf/dl-dst.h: Likewise.
1549         * elf/dl-error.c: Likewise.
1550         * elf/dl-fini.c: Likewise.
1551         * elf/dl-init.c: Likewise.
1552         * elf/dl-load.c: Likewise.
1553         * elf/dl-lookup.c: Likewise.
1554         * elf/dl-misc.c: Likewise.
1555         * elf/dl-profile.c: Likewise.
1556         * elf/dl-profstub.c: Likewise.
1557         * elf/dl-reloc.c: Likewise.
1558         * elf/dl-runtime.c: Likewise.
1559         * elf/dl-version.c: Likewise.
1560         * elf/do-lookup.h: Likewise.
1561         * include/dlfcn.h: Likewise.
1562         * sysdeps/generic/dl-cache.c: Likewise.
1563         * sysdeps/generic/dl-fptr.c: Likewise.
1564         * sysdeps/generic/dl-origin.c: Likewise.
1565         * sysdeps/generic/dl-sysdep.c: Likewise.
1566         * sysdeps/generic/dl-tls.c: Likewise.
1567         * sysdeps/generic/ldsodefs.h: Likewise.
1568         * sysdeps/i386/dl-tls.h: Likewise.
1569         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1570         * elf/rtld.c: Likewise.  Export function though _rtld_global_ro.
1571
1572         * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
1573         dl_debug_fd to rtld_global_ro.
1574         * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
1575         * elf/dl-misc.c: Likewise.
1576
1577         * malloc/malloc.c: Don't call exported interface in the implementation.
1578
1579         * include/wctype.h: Add libc_hidden_proto for __towctrans.
1580         * wctype/towctrans.c: Add libc_hidden_def.
1581
1582         * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
1583
1584         * posix/regexec.c (transit_state): Remove unused variable
1585         next_state.
1586
1587         * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
1588
1589         * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
1590         Declare _rtld_global_ro and _rtld_local_ro.  Move members of
1591         rtld_global structure into the new one if they are modified only
1592         at startup time.  Define GLRO to access _rtld_global_ro.
1593         * elf/Versions: Export _rtld_global_ro.
1594         * elf/dl-close.c: Use GLRO instead of GL where appropriate.
1595         * elf/dl-conflict.c: Likewise.
1596         * elf/dl-deps.c: Likewise.
1597         * elf/dl-dst.h: Likewise.
1598         * elf/dl-error.c: Likewise.
1599         * elf/dl-fini.c: Likewise.
1600         * elf/dl-init.c: Likewise.
1601         * elf/dl-load.c: Likewise.
1602         * elf/dl-lookup.c: Likewise.
1603         * elf/dl-minimal.c: Likewise.
1604         * elf/dl-open.c: Likewise.
1605         * elf/dl-profile.c: Likewise.
1606         * elf/dl-reloc.c: Likewise.
1607         * elf/dl-runtime.c: Likewise.
1608         * elf/dl-support.c: Likewise.
1609         * elf/dl-version.c: Likewise.
1610         * elf/do-lookup.h: Likewise.
1611         * elf/rtld.c: Likewise.
1612         * sysdeps/generic/dl-cache.c: Likewise.
1613         * sysdeps/generic/dl-origin.c: Likewise.
1614         * sysdeps/generic/dl-sysdep.c: Likewise.
1615         * sysdeps/generic/libc-start.c: Likewise.
1616         * sysdeps/generic/dl-cache.c: Likewise.
1617         * sysdeps/i386/dl-machine.h: Likewise.
1618         * sysdeps/i386/setfpucw.c: Likewise.
1619         * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
1620         * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
1621         * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
1622         * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
1623         * sysdeps/i386/fpu/fesetround.c: Likewise.
1624         * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
1625         * sysdeps/i386/fpu/ftestexcept.c: Likewise.
1626         * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
1627         * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
1628         * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1629         * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
1630         * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
1631         * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
1632         * sysdeps/unix/sysv/linux/init-first.c: Likewise.
1633         * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
1634         * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1635         * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
1636         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
1637         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
1638         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1639         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1640         * sysdeps/x86_64/dl-machine.h: Likewise.
1641         * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
1642         * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
1643         * sysdeps/s390/s390-64/dl-machine.h: Likewise.
1644         * sysdeps/s390/s390-32/dl-machine.h: Likewise.
1645         * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
1646         * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
1647         * sysdeps/m68k/dl-machine.h: Likewise.
1648         * sysdeps/ia64/dl-machine.h: Likewise.
1649         * sysdeps/arm/dl-machine.h: Likewise.
1650         * sysdeps/alpha/dl-machine.h: Likewise.
1651         * generic/dl-fptr.c: Likewise.
1652         * mach/hurd/dl-sysdep.c: Likewise.
1653         * unix/sysv/linux/ia64/dl-static.c: Likewise.
1654         * unix/sysv/linux/ia64/getpagesize.c: Likewise.
1655         * unix/sysv/linux/m68k/getpagesize.c: Likewise.
1656         * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
1657
1658 2004-03-04  Ulrich Drepper  <drepper@redhat.com>
1659
1660         * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
1661         * elf/dl-misc.c: Define _dl_name_match_p here.
1662         * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
1663
1664         * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
1665         from the right place.
1666
1667 2004-01-15  Paolo Bonzini  <bonzini@gnu.org>
1668
1669         * posix/regex.h (REG_STARTEND): Define.
1670         * posix/regexec.c (regexec): Check for REG_STARTEND.
1671
1672 2004-02-29  Paolo Bonzini  <bonzini@gnu.org>
1673
1674         * posix/regexec.c (transit_state): Don't handle state == NULL.
1675         Move state log and backreference management...
1676         (merge_state_with_log): ... to this function.
1677         (find_recover_state): New function.
1678         (check_matching): Use find_recover_state to get a non-NULL
1679         state when an invalid state is reached.  Compute the amount
1680         of initial characters to be skipped less conservatively when
1681         multi-byte character sets are in use.  Do not check
1682         dfa->nbackref if the state log is NULL.  Initialize err.
1683         (acquire_init_state_context): Expect err to be initialized.
1684         Fix spacing.
1685
1686 2004-03-05  Jakub Jelinek  <jakub@redhat.com>
1687
1688         * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
1689         * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1690
1691 2004-03-04  Jakub Jelinek  <jakub@redhat.com>
1692
1693         * iconv/iconv_prog.c (process_block): Handle omit_invalid.
1694         If iconv returns EILSEQ with omit_invalid, continue converting
1695         and return 1 if no other errors are seen.
1696         (main): Set status to EXIT_FAILURE whenever process_* returns
1697         nonzero, but only stop processing further files if iy returns
1698         negative value.
1699
1700 2004-03-03  Jakub Jelinek  <jakub@redhat.com>
1701
1702         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
1703         * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
1704         * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
1705         Remove.
1706         * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
1707         * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
1708         * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
1709         Remove.
1710         * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
1711         * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
1712         * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
1713         Remove.
1714         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
1715         * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
1716         file.
1717         * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
1718         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
1719         * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
1720         * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
1721         (posix_fadvise64): Remove.
1722         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
1723         * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
1724         * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
1725         (posix_fadvise64): Remove.
1726
1727 2004-03-02  Andreas Schwab  <schwab@suse.de>
1728
1729         * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
1730         * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
1731         * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
1732
1733 2004-03-01  Ulrich Drepper  <drepper@redhat.com>
1734
1735         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
1736         of return value.
1737         * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
1738
1739         * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
1740         __ASSUME_GETDENTS32_D_TYPE.
1741         * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
1742         getdents syscall again since it provides d_type information.
1743
1744 2004-02-29  Andreas Jaeger  <aj@suse.de>
1745
1746         * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
1747         required.
1748         (Supported Configurations): Add x86_64-*-linux.
1749
1750 2004-02-28  Ulrich Drepper  <drepper@redhat.com>
1751
1752         * sysdeps/i386/i686/memcmp.S: Move table to .rodata.  Patch by HJ Lu.
1753
1754 2004-02-27  Jakub Jelinek  <jakub@redhat.com>
1755
1756         * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
1757         * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
1758         GL(dl_sysinfo) if non-zero.
1759
1760         * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
1761
1762 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
1763
1764         * nss/getXXbyYY_r.c: Pass result also to the nscd_* function.  Don't
1765         set *result here.
1766         * nscd/nscd_proto.h: Add new argument for pointer to result pointer
1767         to all nscd_* functions.
1768         * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter.  Store result
1769         pointer in the address provided by the new parameter if successful.
1770         Otherwise store NULL.  Return zero if no entry found.
1771         (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
1772         it on.
1773         * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter.  Store
1774         result pointer in the address provided by the new parameter if
1775         successful. Otherwise store NULL.  Return zero if no entry found.
1776         (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
1777         __nscd_gethostbyaddr_r): Add new parameter and pass it on.
1778         * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter.  Store result
1779         pointer in the address provided by the new parameter if successful.
1780         Otherwise store NULL.  Return zero if no entry found.
1781         (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
1782         it on.
1783
1784 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
1785
1786         * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
1787         retval to -1 on error.
1788
1789 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
1790
1791         * stdlib/canonicalize.c (__realpath): Simplify.
1792
1793         * posix/regcomp.c (parse_expression): Avoid duplication in calls
1794         to build_charclass_op.
1795
1796 2004-02-26  Jakub Jelinek  <jakub@redhat.com>
1797
1798         * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
1799         in vDSO's link_map, don't assume l_addr == 0.  Set GL(dl_sysinfo)
1800         from e_entry only if AT_SYSINFO not present and adjust by l_addr.
1801         Take vDSO into account when inserting rtld into _dl_loaded chain.
1802
1803 2004-02-26  Ulrich Drepper  <drepper@redhat.com>
1804
1805         * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
1806         number of groups in the cache.  Relax the disconnect between the
1807         interface of authdes_getucred and netname2user a bit.
1808         * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
1809         huge arrays on the stack.
1810
1811         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
1812         not cancelable interfaces.
1813
1814 2004-02-24  Arnold D. Robbins  <arnold@skeeve.com>
1815
1816         * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
1817         `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
1818         compiler warning.
1819
1820 2004-02-24  Nelson H.F. Beebe  <beebe@math.utah.edu>
1821
1822         * posix/regcomp.c (parse_expression): Add cast to (const unsigned
1823         char *) in calls to `build_charclass_op'.
1824         * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
1825         to `wcrtomb'.
1826         * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
1827         bitset_mask, re_string_char_size_a, re_string_wchar_at,
1828         re_string_elem_size_at): Change to use prototypes.
1829         (re_string_char_size_at, re_string_wchar_at,
1830         re_string_elem_size_at): Declare as `internal_function'.
1831
1832 2004-02-25  Ulrich Drepper  <drepper@redhat.com>
1833
1834         * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
1835         _SC_NGROUPS_MAX.
1836
1837 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
1838
1839         * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
1840         * stdlib/Makefile (tests): Add testmb2.
1841         (testmb2-ENV): New.
1842         * stdlib/testmb2.c: New test.
1843
1844 2004-02-23  Jakub Jelinek  <jakub@redhat.com>
1845
1846         * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
1847         inited yet, try to init it before saving old _res.options.
1848         * posix/Makefile (xtests): Add bug-ga2.
1849         (generated): Add bug-ga2.mtrace and bug-ga2-mem.
1850         (xtests): Depend on bug-ga2-mem.
1851         ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
1852         * posix/bug-ga2.c: New test.
1853
1854 2004-02-22  Ulrich Drepper  <drepper@redhat.com>
1855
1856         * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
1857         content also in case of an overflow in the parameter.
1858         Reported by Momchil Velikov <velco@fadata.bg>.
1859
1860 2004-02-21  Ulrich Drepper  <drepper@redhat.com>
1861
1862         * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
1863         In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
1864
1865 2004-02-21  Andreas Jaeger  <aj@suse.de>
1866
1867         * posix/bug-ga1.c: Include <string.h> for memset prototype.
1868
1869         * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
1870
1871         * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
1872         lvalue.
1873
1874 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
1875
1876         * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
1877         (__frame_state_for): Set frame_State_for to abort if the compiler
1878         is using sjlj.
1879         * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
1880         build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
1881
1882 2004-02-20  Alexandre Oliva  <aoliva@redhat.com>
1883
1884         * resolv/Versions: Remove semicolon from the end of libresolv's
1885         GLIBC_2.3.2 version block.
1886         * Versions.def (libresolv): Add GLIBC_2.3.2.
1887
1888 2004-02-19  Carlos O'Donell  <carlos@baldric.uwo.ca>
1889
1890         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
1891         status register loads.
1892
1893 2004-02-20  Thorsten Kukuk  <kukuk@suse.de>
1894
1895         * nscd/nscd.c (termination_handler): Use _exit instead of exit
1896
1897 2004-02-20  Ulrich Drepper  <drepper@redhat.com>
1898
1899         * nscd/nscd.c (main): Report fork errors.
1900
1901         * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
1902         * dlfcn/dlvsym.c: Likewise.
1903         * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
1904         * elf/dl-fini.c: Likewise.
1905         Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1906
1907 2004-02-20  Jakub Jelinek  <jakub@redhat.com>
1908
1909         * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
1910         2003-11-27 atan2 test.
1911
1912         * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
1913         with #ifndef __powerpc64__.
1914
1915         * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
1916         DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
1917         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1918         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1919         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1920         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1921         * sysdeps/alpha/dl-sysdep.h: New file.
1922         * sysdeps/ia64/dl-sysdep.h: New file.
1923         * sysdeps/sparc/dl-sysdep.h: New file.
1924
1925 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
1926
1927         * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
1928         for .gnu.linkonce.b.__sparc32_atomic_locks section.
1929         (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
1930
1931 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
1932
1933         * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
1934         Define as static.
1935         * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
1936         because gcc does not allow inline of functions that call setjmp.
1937
1938 2004-02-19  Steven Munroe  <sjmunroe@us.ibm.com>
1939
1940         * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
1941
1942 2004-02-19  Jakub Jelinek  <jakub@redhat.com>
1943
1944         * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
1945         use attribute_relro for _dl_argv.
1946         * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1947         * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1948         * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1949         * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1950
1951 2004-02-19  Ulrich Drepper  <drepper@redhat.com>
1952
1953         * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
1954         vfork instead of fork.
1955         * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
1956
1957         * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
1958         prevented system-dependent handling from being used.
1959
1960 2004-02-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
1961
1962         * test-skeleton.c (main): If set, use environment variable
1963         TIMEOUTFACTOR to scale test TIMEOUT.
1964
1965 2004-02-18  Ulrich Drepper  <drepper@redhat.com>
1966
1967         * nscd/nscd_conf.c: Include <stdio_ext.h>.
1968
1969 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
1970
1971         * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
1972         as well.
1973
1974         * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
1975         operations.
1976
1977         * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
1978
1979 2004-02-14  Thorsten Kukuk  <kukuk@suse.de>
1980
1981         * nscd/dbg_log.c (set_logfile): Only save name of logfile,
1982         don't open it.
1983         (init_logfile): New function, open logfile if requested.
1984         * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
1985         * nscd/nscd.c (main): Call init_logfile after forking in background.
1986         * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
1987
1988 2004-02-16  Ulrich Drepper  <drepper@redhat.com>
1989
1990         * elf/rtld.c (dl_main): Don't fail execution if file named in
1991         ld.so.preload is not present [BZ #18].
1992
1993         * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
1994         changes in last patch.
1995
1996         * posix/regexec.c (transit_state): Fix typo in commented-out code
1997         [BZ #6].
1998
1999         * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
2000         partial bytes [BZ #24].
2001         * posix/Makefile (tests): Add bug-ga1.
2002         * posix/bug-ga1.c: New file.
2003
2004 2004-02-13  Steven Munroe  <sjmunroe@us.ibm.com>
2005
2006         * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
2007         * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
2008         Non-versioned __longjmp for rtld-__longjmp.
2009         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
2010         default version of __longjmp.
2011         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2012         (__novmx__longjmp): Original version of __longjmp.
2013         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
2014         Non-versioned _setjmp for rtld-_setjmp.
2015         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
2016         as default version of _setjmp.
2017         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2018         (__novmx_setjmp): Original version of _setjmp.
2019         * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
2020         __vmx__sigsetjmp and define as default version of setjmp.
2021         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2022         (__novmxsetjmp): Original version of setjmp.
2023         * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
2024         * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
2025         Non-versioned __sigsetjmp for rtld-setjmp.
2026         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
2027         as default version of __sigsetjmp.
2028         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2029         (__novmx__sigsetjmp): Original version of __sigsetjmp.
2030
2031         * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
2032         * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
2033         Non-versioned __longjmp for rtld-__longjmp.
2034         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
2035         default version of __longjmp.
2036         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2037         (__novmx__longjmp): Original version of __longjmp.
2038         * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
2039         Non-versioned _setjmp for rtld-_setjmp.
2040         [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
2041         as default version of _setjmp.
2042         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2043         (__novmx_setjmp): Original version of _setjmp.
2044         * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
2045         __vmx__sigsetjmp and define as default version of setjmp.
2046         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2047         (__novmxsetjmp): Original version of setjmp.
2048         * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
2049         * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
2050         Non-versioned __longjmp for rtld-__longjmp.
2051         [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
2052         default version of __longjmp.
2053         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2054         (__novmx__longjmp): Original version of __longjmp.
2055         * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
2056         * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
2057         Non-versioned __sigsetjmp for rtld-setjmp.
2058         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
2059         as default version of __sigsetjmp.
2060         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2061         (__novmx__sigsetjmp): Original version of __sigsetjmp.
2062         * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
2063         * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
2064         Non-versioned __sigsetjmp for rtld-setjmp.
2065         [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
2066         as default version of __sigsetjmp.
2067         [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2068         (__novmx__sigsetjmp): Original version of __sigsetjmp.
2069
2070         * sysdeps/powerpc/Dist: New File.
2071         * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
2072         and novmx-sigjmp.c
2073         * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
2074         __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
2075         __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
2076         and __vmx__libc_siglongjmp.
2077         * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
2078         JB_SIZE to add VMX regs to __jmp_buf.
2079         * sysdeps/powerpc/longjmp.c: New file.
2080         * sysdeps/powerpc/novmxsetjmp.h: New file.
2081         * sysdeps/powerpc/novmx-longjmp.c: New file.
2082         * sysdeps/powerpc/novmx-sigjmp.c: New file.
2083         * sysdeps/powerpc/sigjmp.c: New file.
2084
2085 2004-02-13  Jakub Jelinek  <jakub@redhat.com>
2086
2087         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
2088         Define.
2089         (__lrintl, lrintl): Remove.
2090         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
2091         strong_alias spelling.
2092         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
2093         * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
2094
2095 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
2096
2097         * posix/getopt.h: Add some non-gcc support.  Patch by Aharon Robbins.
2098
2099 2004-02-12  Mark Brown  <bmark@us.ibm.com>
2100
2101         * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
2102
2103 2004-02-12  Jakub Jelinek  <jakub@redhat.com>
2104
2105         * sysdeps/powerpc/fpu/s_lrint.c: Move to...
2106         * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
2107         * sysdeps/powerpc/fpu/s_llrint.c: Move to...
2108         * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
2109         * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
2110         * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
2111         * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
2112         * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
2113         * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
2114
2115         * math/libm-test.inc (lrint_test): Add new test.
2116         (llrint_test, lround_test, llround_test): Likewise.
2117         * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
2118         with result taking up 48 bits.
2119         * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
2120         * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
2121         * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
2122         with result taking up 31 bits.
2123
2124 2004-02-12  Ulrich Drepper  <drepper@redhat.com>
2125
2126         * locale/programs/locale.c (show_locale_vars): Don't print a value
2127         for LANG if it is not set.
2128
2129 2004-02-11  Jakub Jelinek  <jakub@redhat.com>
2130
2131         * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
2132         (find_collation_sequence_value): Don't look beyond end of
2133         SYMB_EXTRAMB table.
2134         * posix/Makefile (tests): Add bug-regex23.
2135         (bug-regex23-ENV): New.
2136         * posix/bug-regex23.c: New file.
2137
2138 2004-02-10  Roland McGrath  <roland@frob.com>
2139
2140         * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
2141         * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
2142
2143         * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
2144         * sysdeps/mach/configure.in: ... here.
2145         * sysdeps/mach/hurd/configure: Regenerated.
2146         * sysdeps/mach/configure.in: Regenerated.
2147
2148 2004-02-10  Ulrich Drepper  <drepper@redhat.com>
2149
2150         * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
2151         temporary copies of the variables accumulate on the stack.
2152
2153         * stdio-common/_i18n_number.h: Finish last patch.
2154
2155 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
2156
2157         * sysdeps/i386/i686/memcmp.S: New file.  Patch by HJ Lu.
2158
2159 2003-12-05  Roland McGrath  <roland@redhat.com>
2160
2161         * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
2162         for vm86@GLIBC_2.0 version.  Add new vm86@GLIBC_2.3.4.
2163         * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
2164         * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
2165
2166 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
2167
2168         * nis/ypclnt.c: Cleanup last patch.
2169
2170 2004-02-09  Andreas Jaeger  <aj@suse.de>
2171
2172         * configure.in: Remove glibcbug creation.
2173         * configure: Regenerated.
2174
2175         * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
2176
2177 2004-02-03  Thorsten Kukuk  <kukuk@suse.de>
2178
2179         * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
2180         of duplicated code from __yp_bind.
2181         (__yp_bind_file): New, binding dir code from __yp_bind.
2182         (__yp_bind_client_create): New, ypbind code from __yp_bind.
2183         (__ypclnt_call): New, make NIS query.
2184         (do_ypcall): At first use cached data, then try data from
2185         binding directory, after this ask ypbind for a working ypserv.
2186         Based on a patch from Jeff Bastian <jmbastia@ti.com> and
2187         Chris Barrera <cbarrera@ti.com>
2188
2189 2004-01-19  Roland McGrath  <roland@redhat.com>
2190
2191         * configure.in: Don't set CCVERSION.
2192         * configure: Regenerated.
2193         * glibcbug.in: File removed.
2194         * Makefile (install-bin-script): Remove glibcbug.
2195         (glibcbug): Target removed.
2196         (distclean-1): Don't rm glibcbug.
2197         (distribute): Remove glibcbug.in.
2198
2199 2004-02-09  Roland McGrath  <roland@redhat.com>
2200
2201         * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
2202         24, not 23.
2203
2204 2004-01-29  Roland McGrath  <roland@redhat.com>
2205
2206         * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
2207         Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
2208
2209 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
2210
2211         * libio/genops.c (_IO_cleanup): Do not use locking when flushing
2212         the buffers.  Some thread might be using a stream.
2213
2214 2004-02-09  Andreas Jaeger  <aj@suse.de>
2215
2216         * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
2217         Patch by Jan Beulich <jbeulich@novell.com>.
2218
2219 2004-02-09  Andreas Schwab  <schwab@suse.de>
2220
2221         * include/rpc/rpc.h: Declare thread variables with their correct type.
2222         * sunrpc/clnt_perr.c: Don't cast thread variables.
2223         * sunrpc/clnt_raw.c: Likewise.
2224         * sunrpc/clnt_simp.c: Likewise.
2225         * sunrpc/key_call.c: Likewise.
2226         * sunrpc/svcauth_des.c: Likewise.
2227         * sunrpc/svc.c: Likewise.
2228         * sunrpc/svc_raw.c: Likewise.
2229         * sunrpc/svc_simple.c: Likewise.
2230
2231 2004-02-09  Ulrich Drepper  <drepper@redhat.com>
2232
2233         * stdio-common/_i18n_number.h: Support printing localized decimal
2234         point and thousand separator.
2235         * wctype/wctrans.c: Add __wctrans alias.
2236         * include/wctype.h: Declare __wctrans.
2237         Based on a patch by Hamed Malek.
2238
2239         * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
2240         other than the status bits [BZ #10].
2241
2242 2004-02-08  Ulrich Drepper  <drepper@redhat.com>
2243
2244         Make stream locking operations really work.
2245         * misc/Makefile (CFLAGS-mntent_r.c): Define.
2246         * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
2247         (CFLAGS-putspent.c): Define.
2248         * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
2249         (CFLAGS-putgrent.c): Define.
2250         * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
2251         Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
2252
2253         * elf/dl-load.c (lose): Use noinline attribute instead of silly
2254         alloca to prevent inlining.
2255         * elf/dl-runtime.c (fixup): Likewise.
2256         (profile_fixup): Likewise.
2257
2258         * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
2259         Initialize width correctly.
2260
2261 2004-02-07  Andreas Jaeger  <aj@suse.de>
2262
2263         * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
2264         lvalue.
2265         (internal_ucs4le_loop_single): Likewise.
2266         (ucs4_internal_loop): Likewise.
2267         (BODY): Likewise.
2268         (internal_ucs4_loop_single): Likewise.
2269         * iconvdata/iso8859-1.c (BODY): Likewise.
2270         * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
2271         * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
2272         * iconvdata/gb18030.c (BODY): Likewise.
2273         * iconvdata/armscii-8.c (BODY): Likewise.
2274         * stdlib/msort.c (msort_with_tmp): Likewise.
2275
2276         * iconv/gconv_open.c (__gconv_open): Remove conditional expression
2277         as lvalue.
2278
2279 2004-02-06  Steven Munroe  <sjmunroe@us.ibm.com>
2280
2281         * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
2282         weak extern.
2283         (__elf_machine_runtime_setup): Invalidate the instruction cache over
2284         the whole range of the PLT.
2285
2286 2004-02-06  Andreas Schwab  <schwab@suse.de>
2287
2288         * posix/regcomp.c (build_range_exp): Fix off-by-one.
2289         (parse_bracket_exp): Likewise.
2290
2291 2004-02-05  Ulrich Drepper  <drepper@redhat.com>
2292
2293         * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
2294         _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC.  Patch by Anton Blanchard.
2295
2296 2004-02-02  Paolo Bonzini  <bonzini@gnu.org>
2297
2298         * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
2299         (re_search_internal): Pass new parameter to check_matching.
2300         (check_matching): Unless a parenthesized group is found at the
2301         beginning of the regexp, advance P_MATCH_FIRST until we entered
2302         a state different from the initial state.
2303
2304 2004-02-01  Ulrich Drepper  <drepper@redhat.com>
2305
2306         * math/libm-test.inc (lround_test): Add new test.
2307         (llround_test): Likewise.
2308         (lrint_test): Likewise.
2309         (llrint_test): Likewise.
2310         * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
2311         with result taking up 20 bits.
2312         * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
2313         * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
2314         * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
2315         case with result taking up 31 bits.
2316         * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
2317
2318         * po/nl.po: Update from translation team.
2319
2320 2004-01-30  Andreas Schwab  <schwab@suse.de>
2321
2322         * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
2323         FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
2324         SEGV_PSTKOVF): Remove underscore prefix from definition.
2325
2326 2004-01-28  Paolo Bonzini  <bonzini@gnu.org>
2327
2328         Merge regex changes in gawk.
2329         * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
2330         of collation elements.
2331         * posix/regex.c: Include limits.h.
2332         * posix/regex.h: Document REG_ECOLLATE correctly.
2333         * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
2334
2335 2004-01-24  Andreas Jaeger  <aj@suse.de>
2336
2337         * malloc/obstack.h: Import gnulib version.
2338         * malloc/obstack.c: Likewise.
2339
2340 2004-01-26  David Mosberger  <davidm@hpl.hp.com>
2341
2342         * elf/link.h (struct dl_phdr_info): Fix typo in comment.
2343         * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
2344         increment dl_load_adds.
2345         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
2346         with equivalent GL(dl_load_adds - GL(dl_nloaded).
2347         (dl_iterate_phdr): Likewise.
2348         * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
2349         * elf/dl-support.c: Remove global variable _dl_load_subs.
2350         * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
2351         _dl_load_subs member.
2352
2353 2004-01-27  Jakub Jelinek  <jakub@redhat.com>
2354
2355         * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
2356         (_dl_start): And neither here.
2357         (dl_main): Set GL(dl_loaded)->l_relro_* and
2358         GL(dl_rtld_map)->l_relro_*.
2359
2360 2004-01-23  David Mosberger  <davidm@hpl.hp.com>
2361
2362         * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
2363         _dl_load_adds and _dl_load_subs.
2364         * elf/dl-support.c (_dl_load_adds): New variable.
2365         (_dl_load_subs): Likewise.
2366         * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
2367         * elf/dl-close.c (_dl_close): Increment dl_load_subs.
2368         * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
2369         dlpi_subs.
2370         * include/link.h: Likewise.
2371         * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
2372         and dlpi_subs members.
2373         (dl_iterate_phdr): Likewise.
2374         * elf/tst-dlmodcount.c: New file.
2375         * elf/Makefile (distribute): Mention tst-dlmodcount.c.
2376         (tests): If build-shared, mention tst-dlmodcount.
2377         ($(objpfx)tst-dlmodcount): If build-shared, build and
2378         run tst-dlmodcount.
2379
2380 2004-01-22  Jakub Jelinek  <jakub@redhat.com>
2381
2382         * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
2383         into...
2384         (_dl_protect_relro): New routine.
2385         * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
2386         * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
2387         from bootstrap_map.
2388         (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
2389         Call _dl_protect_relro for libraries if prelinking.
2390
2391 2004-01-23  Richard Henderson  <rth@redhat.com>
2392
2393         * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
2394         * sysdeps/alpha/fpu/Versions (libm): Likewise.
2395         * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
2396         * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
2397
2398 2004-01-22  Andreas Jaeger  <aj@suse.de>
2399
2400         * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
2401         avoid warnings for builtin function log2.
2402
2403         * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
2404         information.
2405
2406 2004-01-20  Ulrich Drepper  <drepper@redhat.com>
2407
2408         * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
2409         * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
2410         Patch by Davide Libenzi.
2411
2412         * sysdeps/unix/sysv/linux/kernel-features.h: Define
2413         __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
2414
2415         * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
2416
2417         * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
2418         instead of loff_t.  Include <fcntl.h>.
2419         * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
2420         * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
2421         * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
2422         * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
2423         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
2424         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
2425         * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
2426         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2427         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
2428         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2429         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
2430         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
2431
2432         * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
2433
2434         * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
2435
2436 2003-12-31  Bruno Haible  <bruno@clisp.org>
2437
2438         * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
2439         Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
2440         (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
2441         (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
2442         (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
2443         0x00 0x20. Don't map U+2500..U+25E3.
2444
2445 2004-01-19  Jakub Jelinek  <jakub@redhat.com>
2446
2447         * posix/regexec.c (get_subexp): Remove bkref_str variable.
2448         Extend buffers if needed before comparisons.
2449         (get_subexp_sub): Handle clean_state_log_if_needed failure.
2450
2451 2004-01-17  Ulrich Drepper  <drepper@redhat.com>
2452
2453         * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
2454         atomic_decrement.  Patch by Davin McCall.
2455
2456 2004-01-13  Daniel Jacobowitz  <drow@mvista.com>
2457
2458         * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
2459         (__sim_disabled_exceptions, __sim_round_mode): Declare with
2460         hidden data and nocommon.
2461         * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
2462         (__sim_disabled_exceptions, __sim_round_mode): Use
2463         libc_hidden_proto.
2464         * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
2465         (__sim_disabled_exceptions, __sim_round_mode): Likewise.
2466
2467 2004-01-16  Ulrich Drepper  <drepper@redhat.com>
2468
2469         * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
2470         PT_IA_64_HP_STACK.
2471
2472 2004-01-16  Richard Henderson  <rth@redhat.com>
2473
2474         * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
2475         (__libc_enable_secure_internal): Likewise.
2476
2477         * elf/dl-load.c: Don't declare __libc_stack_end.
2478         * sysdeps/generic/libc-start.c: Likewise.
2479         * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
2480         * sysdeps/generic/segfault.c: Likewise.  Include ldsodefs.h.
2481         * sysdeps/generic/backtrace.c: Likewise.
2482
2483 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
2484
2485         * Versions.def: Add GLIBC_2.3.4.
2486
2487 2004-01-15  Richard Henderson  <rth@redhat.com>
2488
2489         * sysdeps/unix/alpha/sysdep.h: Revert last change.
2490
2491 2004-01-15  Richard Henderson  <rth@redhat.com>
2492
2493         * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
2494
2495         * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
2496         !samegp relocation.
2497
2498 2004-01-15  Richard Henderson  <rth@redhat.com>
2499
2500         * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
2501         ucontext-offsets.sym.
2502         * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
2503         * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
2504         * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
2505         * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
2506         * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
2507
2508 2004-01-15  Richard Henderson  <rth@redhat.com>
2509
2510         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
2511         __syscall_, move nop inside, adjust users by +4.
2512
2513 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
2514
2515         * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
2516         (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
2517         (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
2518         symbols.
2519         * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
2520         gen-as-const-headers.
2521         * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
2522         * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
2523         Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
2524         * sysdeps/unix/sysv/linux/kernel-features.h
2525         (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
2526         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
2527         Declare mcontext_t inline and include altivec state for 64-bit.
2528         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
2529         versions for setcontext, getcontext, and swapcontext.
2530
2531         * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
2532         versions for setcontext, getcontext, swapcontext, and makecontext.
2533         * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
2534         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
2535         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
2536         Compatible with GLIBC_2.3.3 release.
2537         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
2538         (__makecontext): Use parm save area instead of compiler_dw to hold
2539         context pointer.
2540         * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
2541         (__setcontext):  Upgrade to restore Altivec regs and version
2542         GLIBC_2_3_4.
2543         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
2544         Compatible with GLIBC_2.3.3 release.
2545         * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
2546         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
2547         [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
2548         Compatible with GLIBC_2.3.3 release.
2549         * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
2550         (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
2551
2552 2004-01-12  Steven Munroe  <sjmunroe@us.ibm.com>
2553
2554         * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
2555         versions for setcontext, getcontext, swapcontext, and makecontext.
2556         * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
2557         (__getcontext):  Upgrade to save Altivec regs and version GLIBC_2_3_4.
2558         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
2559         Compatible with GLIBC_2.3.3 release.
2560         * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
2561         (__makecontext): Upgrade to align for Altivec regs and version
2562         GLIBC_2_3_4.
2563         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
2564         Compatible with GLIBC_2.3.3 release.
2565         * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
2566         (__setcontext):  Upgrade to restore Altivec regs and version
2567         GLIBC_2_3_4.
2568         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
2569         Compatible with GLIBC_2.3.3 release.
2570         * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
2571         (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
2572         [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
2573         (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
2574         * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
2575         (_UC_VSCR, _UC_VRSAVE): Define.
2576         (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
2577         _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
2578
2579 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
2580
2581         * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
2582
2583 2004-01-16  Alfred M. Szmidt  <ams@kemisten.nu>
2584
2585         * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
2586         parameter type.
2587
2588 2004-01-15  Ulrich Drepper  <drepper@redhat.com>
2589
2590         * elf/elf.h: Fix typo in comment.
2591
2592         * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
2593         * elf/rtld.c: Initialize _dl_argv to allow aliasing.
2594
2595         * resolv/resolv.h: Add RES_USEBSTRING.
2596         * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
2597         RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
2598         * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
2599         * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
2600         bytestring IPv6 lookup with RES_USEBSTRING option is selected.
2601         Otherwise use the two nibble formats.
2602
2603 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
2604
2605         * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
2606         * config.h.in: Add entry for HAVE_Z_RELRO.
2607         * include/libc-symbols.h: Define attribute_relro.
2608         * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
2609         max_capstrlen, and max_dirnamelen definitions.
2610         * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
2611         load_time, start_time, library_path, preloadlist, version_info,
2612         any_debug.
2613         Remove rtld_total_time.  Make it a local variable.  Pass pointer to
2614         it to print_statistics.  Change print_statistics accordingly.
2615         * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv.  Use
2616         attribute_relro instead of explicitly assigning variable to the
2617         .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
2618         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
2619         _dl_argv, _dl_argv_internal with attribute_relro.
2620
2621 2004-01-13  Segher Boessenkool  <boessen@de.ibm.com>
2622
2623         * Makerules (gen-as-const): Don't silently continue on failure.
2624
2625 2004-01-14  Steven Munroe  <sjmunroe@us.ibm.com>
2626
2627         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
2628         rtld_hidden_data_def.
2629
2630 2004-01-14  Ulrich Drepper  <drepper@redhat.com>
2631
2632         * libio/libio.h: Add const to function tables types.
2633         * libio/libioP.h: Likewise.
2634         * login/utmp-private.h: Likewise.
2635         * libio/fileops.c: Add const to jump table variable definition.
2636         * libio/genops.c: Likewise.
2637         * libio/iofopncook.c: Likewise.
2638         * libio/iopopen.c: Likewise.
2639         * libio/memstream.c: Likewise.
2640         * libio/obprintf.c: Likewise.
2641         * libio/oldfileops.c: Likewise.
2642         * libio/oldiopopen.c: Likewise.
2643         * libio/strops.c: Likewise.
2644         * libio/vsnprintf.c: Likewise.
2645         * libio/vswprintf.c: Likewise.
2646         * libio/wfileops.c: Likewise.
2647         * libio/wstrops.c: Likewise.
2648         * login/getutent_r.c: Likewise.
2649         * login/getutid_r.c Likewise.
2650         * login/getutline_r.c: Likewise.
2651         * sysdeps/generic/utmp_file.c: Likewise.
2652
2653 2004-01-09  Bruno Haible  <bruno@clisp.org>
2654
2655         * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
2656         * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
2657         (_nl_load_domain): Treat major revision 1 like major revision 0.
2658
2659 2004-01-11  Bruno Haible  <bruno@clisp.org>
2660
2661         * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
2662         width or precision has been seen.
2663
2664 2004-01-08  Bruno Haible  <bruno@clisp.org>
2665
2666         * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
2667         dependent segment not known to this version of the library, ignore
2668         the string pair instead of crashing.
2669
2670 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2671
2672         * configure.in: Rewrite test to give gcc to clean up after itself.
2673         Patch by Greg Schafer.
2674
2675         * posix/regex.c: Support crappy compilers and platforms which have
2676         problems with alloca.
2677         * posix/regex_internal.h: Likewise.
2678         Patch by Paolo Bonzini.
2679
2680 2004-01-12  Paolo Bonzini  <bonzini@gnu.org>
2681
2682         * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
2683         Drop code to support this, it is never true.
2684         (build_range_exp) [!_LIBC]: Do not create a range
2685         in MBCSET for a single-byte character set.
2686         (build_range_exp) [_LIBC]: Do not create a range
2687         in MBCSET for a single-byte character set without
2688         collation elements.
2689         (init_dfa): Do not conditionalize on _LIBC, it
2690         just makes the code less clear.
2691         (parse_bracket_exp): Use NON_MATCH variable in
2692         addition to "mbcset->non_match", not as an
2693         alternative.
2694         (build_charclass_op): rename NOT parameter to
2695         NON_MATCH, use it instead of declaring a variable.
2696         (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
2697         if the character set is single-byte.
2698
2699 2004-01-14  Jakub Jelinek  <jakub@redhat.com>
2700
2701         * posix/regcomp.c (peek_token_bracket): Check remaining
2702         string length before re_string_peek_byte (x, 1).
2703         (parse_bracket_symbol): Likewise.
2704         * posix/regex_internal.h (re_string_is_single_byte_char): Return
2705         true at last byte in the string.
2706         * posix/bug-regex22.c (main): Add new test.
2707
2708 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2709
2710         * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
2711         .data.rel.ro.
2712
2713         * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
2714
2715         * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
2716         * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
2717         rtld_hidden_def and move into .data.rel.ro section.
2718         * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
2719         rtld_hidden_proto.
2720         * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
2721         if !SHARED.
2722
2723 2004-01-13  Richard Henderson  <rth@redhat.com>
2724
2725         * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
2726
2727 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2728
2729         * sysdeps/unix/sysv/linux/dl-execstack.c
2730         (_dl_make_stack_executable): Move common code in front.  Use
2731         __builtin_expect.
2732
2733         * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface.  Add
2734         challenge for caller.
2735         * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
2736         member in rtld_global appropriately.
2737         * elf/dl-support.c: Likewise.
2738         * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
2739         Pass it on to the changed function.
2740         (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
2741
2742 2004-01-13  Richard Henderson  <rth@redhat.com>
2743
2744         * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
2745         Cast old up to uint64_t before back down to inner width.
2746         (__arch_compare_and_exchange_xxx_16_int): Likewise.
2747         (__arch_compare_and_exchange_xxx_32_int): Likewise.
2748         (__arch_compare_and_exchange_xxx_64_int): Likewise.
2749         (__arch_compare_and_exchange_val_8_int): Cast result to
2750         the type of the memory.
2751         (__arch_compare_and_exchange_val_16_int): Likewise.
2752         (__arch_compare_and_exchange_val_32_int): Likewise.
2753         (__arch_compare_and_exchange_val_64_int): Likewise.
2754         (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
2755         (atomic_compare_and_exchange_bool_rel): Likewise.
2756
2757         * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
2758         based on HAVE___THREAD instead of USE_TLS.
2759
2760         * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
2761         (__adjtimex_tv64): Use it.
2762
2763         * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
2764         to void* rather than directly to the compatibility structure type.
2765         * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
2766
2767         * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
2768         Forward declare.
2769
2770 2004-01-13  Richard Henderson  <rth@redhat.com>
2771
2772         * Versions.def (libm): Add GLIBC_2.3.3.
2773         * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
2774         * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
2775         sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
2776         sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
2777         sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
2778         sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
2779         sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
2780         sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
2781         sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
2782         sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
2783         sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
2784         sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
2785         sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
2786         * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
2787         functions for gcc 3.3.
2788
2789         * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
2790         sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
2791         sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
2792         sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
2793         sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
2794         sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
2795         sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
2796         sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
2797         sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
2798         weak_alias if the function name has been #defined.
2799
2800         * math/cabsf.c: Move ...
2801         * sysdeps/generic/cabsf.c: ... here.
2802         * math/cargf.c: Move ...
2803         * sysdeps/generic/cargf.c: ... here.
2804         * math/cimagf.c: Move ...
2805         * sysdeps/generic/cimagf.c: ... here.
2806         * math/conjf.c: Move ...
2807         * sysdeps/generic/conjf.c: ... here.
2808         * math/crealf.c: Move ...
2809         * sysdeps/generic/crealf.c: ... here.
2810
2811 2004-01-13  Ulrich Drepper  <drepper@redhat.com>
2812
2813         * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes.  Add it to
2814         LDFLAGS.so and LDFLAGS-rtld.
2815         (+link): Add relro-LDFLAGS.
2816         * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
2817         __libc_thread_subfreeres sections after .jcr section.
2818         * config.make.in: Add have-z-relro.
2819         * configure.in: Add check for -z relro option.
2820         * include/link.h (struct link_map): Add relro_addr and relro_size
2821         members.
2822         * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
2823         * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
2824         part of loaded segments read-only.
2825         * elf/elf.h: Define PT_GNU_RELRO.
2826         * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
2827         (dl_main): Recognize PT_GNU_RELRO of the application.  Call
2828         _dl_debug_initialize and initialize l_info[DT_DEBUG] before
2829         relocations.
2830
2831 2004-01-12  Jakub Jelinek  <jakub@redhat.com>
2832
2833         * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
2834
2835 2004-01-11  Andreas Jaeger  <aj@suse.de>
2836
2837         * sysdeps/x86_64/__longjmp.S: Add cfi directives.
2838
2839 2004-01-10  Andreas Jaeger  <aj@suse.de>
2840
2841         * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
2842         * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
2843         * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
2844         * sysdeps/x86_64/strcspn.S: Likewise.
2845         * sysdeps/x86_64/strspn.S: Likewise.
2846
2847 2004-01-08  Jakub Jelinek  <jakub@redhat.com>
2848
2849         * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
2850         right before syscall and cfi_startproc before PSEUDO_END.
2851         Clear %rbp in thread_start.
2852
2853 2004-01-05  Jakub Jelinek  <jakub@redhat.com>
2854
2855         * posix/regcomp.c (regcomp): Fix comment typo.
2856         (regfree): Free preg->translate, clear buffer, allocated, fastmap
2857         and translate fields.
2858
2859         * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
2860         argument to unsigned RE_TRANSLATE_TYPE.
2861         * posix/regex_internal.h (re_string_t): Change trans type to
2862         unsigned RE_TRANSLATE_TYPE.
2863         * posix/regex_internal.c (re_string_construct_common): Cast
2864         trans to unsigned RE_TRANSLATE_TYPE.
2865         (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
2866         path if pstr->trans.  Never translate the character through
2867         pstr->trans.
2868         * posix/Makefile (tests): Add bug-regex22.
2869         (bug-regex22-ENV): Set.
2870         * posix/bug-regex22.c: New test.
2871
2872 2004-01-02  Paolo Bonzini  <bonzini@gnu.org>
2873
2874         * posix/regex_internal.c (re_node_set_add_intersect,
2875         re_node_set_merge): Rewritten.
2876         (re_node_set_insert, re_node_set_remove_at):
2877         Avoid memmove, we know what direction we should copy and that we
2878         are copying 32-bit words.
2879         (re_node_set_compare): Iterate backwards.
2880
2881 2003-12-30  Paul Eggert  <eggert@twinsun.com>
2882
2883         * time/mktime.c (verify): New macro.
2884         (time_t_is_integer, twos_complement_arithmetic,
2885         right_shift_propagates_sign, base_year_is_a_multiple_of_100,
2886         C99_integer_division): Document these longstanding assumptions in the
2887         code, and verify them at compile-time.
2888
2889 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
2890
2891         * posix/regex_internal.h (re_match_context_t): Add dfa member.
2892         * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
2893         match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
2894         prune_impossible_nodes, check_halt_state_context, proceed_next_node,
2895         sift_states_backward, update_cur_sifted_state, check_dst_limits,
2896         check_dst_limits_calc_pos, sift_states_bkref, transit_state,
2897         check_subexp_matching_top, transit_state_sb, transit_state_mb,
2898         transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
2899         check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
2900         Remove dfa parameter.  Get dfa from mctx.  Adjust callers.
2901         (re_search_internal): Initialize mctx.dfa.
2902
2903         * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
2904
2905         * posix/regex_internal.h (re_dfa_t): Add syntax field.
2906         * posix/regcomp.c (parse): Initialize dfa->syntax.
2907         * posix/regexec.c (acquire_init_state_context,
2908         prune_impossible_nodes, check_matching, check_halt_state_context,
2909         proceed_next_node, sift_states_iter_mb, sift_states_backward,
2910         update_cur_sifted_state, sift_states_bkref, transit_state,
2911         transit_state_sb, transit_state_mb, transit_state_bkref,
2912         get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
2913         build_trtable): Remove preg argument, add dfa argument instead
2914         and remove dfa = preg->buffer initialization in the body.
2915         Adjust all callers.
2916         (check_node_accept_bytes, group_nodes_into_DFAstates,
2917         check_node_accept): Likewise.  Use dfa->syntax instead of
2918         preg->syntax.
2919         (check_arrival_add_next_nodes): Remove preg argument.
2920
2921         * posix/regex_internal.h (re_match_context_t): Make input
2922         re_string_t instead of a pointer to it.
2923         * posix/regex_internal.c (re_string_construct_common): Don't clear
2924         pstr here...
2925         (re_string_construct): ... but only here.
2926         * posix/regexec.c (match_ctx_init): Remove input argument.  Don't
2927         initialize fields to zero.
2928         (re_search_internal): Move input into mctx.input.
2929         (acquire_init_state_context, check_matching,
2930         check_halt_state_context, proceed_next_node,
2931         clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
2932         transit_state, transit_state_sb, transit_state_mb,
2933         transit_state_bkref, get_subexp, check_arrival,
2934         check_arrival_add_next_nodes, check_node_accept, extend_buffers):
2935         Change mctx->input into &mctx->input and mctx->input->field into
2936         mctx->input.field.
2937
2938 2004-01-02  Jakub Jelinek  <jakub@redhat.com>
2939             Paolo Bonzini  <bonzini@gnu.org>
2940
2941         * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
2942         (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
2943         (re_dfa_t): Change word_char type to bitset.  Add word_ops_used field.
2944         (re_string_context_at, re_string_reconstruct): Remove last argument.
2945         * posix/regex_internal.c (re_string_allocate): Initialize
2946         pstr->word_char and pstr->word_ops_used.
2947         (re_string_context_at): Remove newline_anchor argument.
2948         Use input->newline_anchor instead, swap && conditions.
2949         Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
2950         Use input->word_char bitmap instead of IS_WORD_CHAR.
2951         (re_string_reconstruct): Likewise.
2952         Adjust re_string_context_at caller.
2953         * posix/regexec.c (acquire_init_state_context,
2954         check_halt_state_context, transit_state, transit_state_sb,
2955         transit_state_mb, transit_state_bkref, check_arrival,
2956         check_node_accept): Adjust re_string_context_at and
2957         re_string_reconstruct callers.
2958         (re_search_internal): Likewise.  Set input.newline_anchor.
2959         (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
2960         * posix/regcomp.c (init_word_char): Change return type to void.
2961         Set dfa->word_ops_used.
2962         (free_dfa_content): Don't free dfa->word_char.
2963         (parse_expression): Remove error handling for init_word_char.
2964
2965 2004-01-01  Paolo Bonzini  <bonzini@gnu.org>
2966
2967         * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
2968         bitfield.
2969
2970         * posix/regex_internal.c (re_node_set_insert):  Rewrite.
2971
2972 2004-01-01  Ulrich Drepper  <drepper@redhat.com>
2973
2974         * posix/getconf.c: Update copyright year.
2975         * nss/getent.c: Likewise.
2976         * nscd/nscd_nischeck.c: Likewise.
2977         * iconv/iconvconfig.c: Likewise.
2978         * iconv/iconv_prog.c: Likewise.
2979         * elf/ldconfig.c: Likewise.
2980         * catgets/gencat.c: Likewise.
2981         * csu/version.c: Likewise.
2982         * elf/ldd.bash.in: Likewise.
2983         * elf/sprof.c (print_version): Likewise.
2984         * locale/programs/locale.c: Likewise.
2985         * locale/programs/localedef.c: Likewise.
2986         * nscd/nscd.c (print_version): Likewise.
2987         * debug/xtrace.sh: Likewise.
2988         * malloc/memusage.sh: Likewise.
2989         * malloc/mtrace.pl: Likewise.
2990
2991 2004-01-01  Petter Reinholdtsen  <pere@hungry.com>
2992
2993         * stdlib/strfmon.c: Make formatting of left-justified currency
2994         values match the the POSIX standard.  When using format string
2995         "[%-14#5.4n]" to print -123.45, the result should be
2996         "[-$   123.4500 ]", not "[-$123.4500    ]".
2997
2998 2004-01-01  Andreas Jaeger  <aj@suse.de>
2999
3000         * resolv/Makefile (generated): New.
3001
3002 2003-12-31  Joseph S. Myers  <jsm@polyomino.org.uk>
3003
3004         * CONFORMANCE: Update.
3005
3006 2003-12-30  Paul Eggert  <eggert@twinsun.com>
3007
3008         * time/mktime.c: (my_mktime_localtime_r):
3009         Remove.  All uses changed to __localtime_r.
3010         (__localtime_r) [!defined _LIBC]: New macro.  Include "time_r.h" to
3011         get its implementation.
3012         Fix compile-command to allow for TIME_R_POSIX.
3013
3014         * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
3015         Remove.  All uses changed to __localtime_r and __gmtime_r.
3016         (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
3017         Include "time_r.h" to get their implementations.
3018
3019         * time/timegm.c: Allow use in GNU applications outside glibc.
3020         [defined HAVE_CONFIG_H]: Include <config.h>.
3021         [!defined _LIBC]: Include "timegm.h", <time_r.h>.
3022         Define __gmtime_r, and declare __mktime_internal.
3023         (timegm): Define via a prototype, since we can safely assume C89 now.
3024
3025         * time/mktime.c (check_result): Use less-confusing report format.
3026         "long" -> "long int", as per usual GNU style.
3027         (main): Likewise.
3028         Don't loop if the iteration overflows time_t.
3029         Allow a negative step in the iteration.
3030
3031         * time/mktime.c: Assume freestanding C89 or better.
3032         (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
3033         assume they're 1.
3034         (__P): Remove; not used.
3035         (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
3036         (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
3037         Prototypes use const * where appropriate.
3038         (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
3039         which caused the testing code to dump core on some hosts.
3040
3041 2003-12-31  Ulrich Drepper  <drepper@redhat.com>
3042
3043         * locale/setlocale.c (setlocale): Avoid duplicating locale names
3044         if we can reuse old strings.
3045
3046         * inet/rcmd.c: Provide better error message in case of unknown
3047         host.  Remove USE_IN_LIBIO.
3048
3049         * nscd/nscd.init: Updated version, more conforming with current
3050         init file standards.
3051
3052         * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
3053         /var/run/nscd directory.
3054         (_PATH_NSCDSOCKET): Likewise.
3055
3056         * test-skeleton.c (timeout_handler): Fix error message.
3057
3058         * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
3059         CNT == 0.
3060
3061 2003-12-30  Jakub Jelinek  <jakub@redhat.com>
3062
3063         * posix/regexec.c (get_subexp): Only set bkref_str after the first
3064         loop, use buf + bkref_str_off in the loop instead.
3065         * posix/bug-regex11.c (tests): Add 3 new tests.
3066
3067         * posix/regexec.c (clean_state_log_if_need): Rename to...
3068         (clean_state_log_if_needed): ...this.
3069         (transit_state_mb, get_subexp_sub): Adjust callers.
3070
3071         * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
3072         failed.  Reported by Steve Grubb.
3073
3074 2003-12-29  Ulrich Drepper  <drepper@redhat.com>
3075
3076         * elf/elf.h: Add a few definitions from Solaris 9.
3077
3078 2003-12-29  Andreas Schwab  <schwab@suse.de>
3079
3080         * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
3081         $(fno_unit_at_a_time) to avoid reordering assembler output.
3082
3083 2003-12-29  Jakub Jelinek  <jakub@redhat.com>
3084
3085         * posix/regexec.c (re_copy_regs): Revert comment change.
3086         Avoid memory leak if realloc fails.
3087         (proceed_next_node): Return -2 if re_node_set_insert fails.
3088         Return -2 if push_fail_stack fails.
3089         (push_fail_stack): Change fs->alloc only after successful realloc.
3090         (pop_fail_stack): Formatting.
3091         (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
3092         (check_arrival_add_next_nodes): Merge identical statements
3093         from if branches.
3094
3095         * signal/Makefile (tests): Add tst-raise.
3096         * signal/tst-raise.c: New test.
3097
3098 2003-12-28  Ulrich Drepper  <drepper@redhat.com>
3099
3100         * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
3101
3102         * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
3103         (push_fail_stack): Add missing check for failed memory allocation.
3104
3105         * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
3106         _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
3107         _IO_putwc_unlocked.
3108
3109 2003-12-28  Andreas Jaeger  <aj@suse.de>
3110
3111         * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
3112         overflow for 0 as argument. Raise Invalid exception for negative args.
3113         * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
3114         * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
3115         * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
3116         * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
3117         * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
3118         * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
3119         * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
3120         * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
3121         * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
3122         * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
3123         * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
3124
3125         * math/libm-test.inc (yn_test): Expect invalid exception for
3126         negative arguments.
3127         (y0_test): Likewise.
3128         (y1_test): Likewise.
3129
3130         * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
3131         execptions for exp(NaN).
3132
3133 2003-12-23  Paolo Bonzini  <bonzini@gnu.org>
3134
3135         * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
3136         * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
3137         among the tokens, rather than among the epsilon-transiting nodes.
3138         (re_token_t): Add the opt_subexp flag.
3139         * posix/regcomp.c (optimize_utf8, calc_first,
3140         calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
3141         (mark_opt_subexp, mark_opt_subexp_iter): New functions.
3142         (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
3143         OP_DUP_ASTERISK and marking optional subexpressions
3144         as such using mark_opt_subexp.
3145         * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
3146         and pass it to update_regs.
3147         (update_regs): Use the PREV_INDEX_MATCH parameter, together
3148         with the opt_subexp flag, in order to discard a final empty
3149         match of a repeated subexpression.
3150         * posix/BOOST.tests: Adjust test vectors.
3151         * posix/PCRE.tests: Likewise.
3152         * posix/rxspencer/tests: Likewise.
3153
3154 2000-05-22  Jakub Jelinek  <jakub@redhat.com>
3155
3156         * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
3157         with omitted middle operand.
3158
3159 2003-12-22  Jakub Jelinek  <jakub@redhat.com>
3160
3161         * posix/regcomp.c: Remove C99-ism.
3162         * posix/tst-rxspencer.c: Likewise.
3163         Based on a patch by Alex Davis <alex14641@yahoo.com>.
3164
3165 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
3166
3167         * posix/regex_internal.h [!_LIBC] (internal_function): Define.
3168         (re_string_allocate, re_string_construct, re_string_reconstruct,
3169         re_string_realloc_buffers, build_wcs_buffer,
3170         build_wcs_upper_buffer, build_upper_buffer,
3171         re_string_translate_buffer, re_string_destruct,
3172         re_string_elem_size_at, re_string_char_size_at,
3173         re_string_wchar_at, re_string_context_at,
3174         re_node_set_alloc, re_node_set_init_1
3175         re_node_set_init_2, re_node_set_init_copy,
3176         re_node_set_add_intersect, re_node_set_init_union,
3177         re_node_set_merge, re_node_set_insert
3178         re_node_set_compare, re_node_set_contains
3179         re_node_set_remove_at, re_dfa_add_node,
3180         re_acquire_state, re_acquire_state_context,
3181         free_state): Add internal_function to declaration.
3182
3183         * posix/regexec.c (match_ctx_init, match_ctx_clean,
3184         match_ctx_free, match_ctx_free_subtops,
3185         match_ctx_add_entry, search_cur_bkref_entry,
3186         match_ctx_clear_flag, match_ctx_add_subtop,
3187         match_ctx_add_sublast, sift_ctx_init,
3188         re_search_internal, re_search_2_stub, re_search_stub,
3189         re_copy_regs, acquire_init_state_context,
3190         prune_impossible_nodes, check_matching,
3191         check_halt_node_context, check_halt_state_context
3192         update_regs, proceed_next_node, push_fail_stack,
3193         pop_fail_stack, set_regs, free_fail_stack_return,
3194         sift_states_iter_mb, sift_states_backward
3195         update_cur_sifted_state, add_epsilon_src_nodes,
3196         sub_epsilon_src_nodes, check_dst_limits,
3197         check_dst_limits_calc_pos, check_subexp_limits,
3198         sift_states_bkref, clean_state_log_if_need,
3199         merge_state_array, transit_state,
3200         check_subexp_matching_top, transit_state_sb,
3201         transit_state_mb, transit_state_bkref,
3202         get_subexp, get_subexp_sub, find_subexp_node,
3203         check_arrival, check_arrival_add_next_nodes,
3204         find_collation_sequence_value, check_arrival_expand_ecl,
3205         check_arrival_expand_ecl_sub, expand_bkref_cache,
3206         build_trtable, check_node_accept_bytes, extend_buffers,
3207         group_nodes_into_DFAstates, check_node_accept): Likewise.
3208
3209         * posix/regex_internal.c (re_string_construct_common,
3210         re_string_skip_chars, create_newstate_common,
3211         register_state, create_ci_newstate, create_cd_newstate,
3212         calc_state_hash): Likewise.
3213         (re_string_peek_byte_case, re_fetch_byte_case): Change
3214         declaration from ANSI to K&R.
3215
3216 2003-12-16  Paolo Bonzini  <bonzini@gnu.org>
3217
3218         * posix/regexec.c (build_trtable): Don't allocate the trtable
3219         until state->word_trtable is known.  Don't hardcode UINT_BITS
3220         iterations on each bitset item.
3221
3222 2003-12-22  Maciej W. Rozycki  <macro@ds2.pg.gda.pl>
3223
3224         * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
3225         Initialize REF before passing it to _dl_lookup_symbol.
3226
3227 2003-12-21  Roland McGrath  <roland@frob.com>
3228
3229         * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
3230
3231 2003-12-21  Jakub Jelinek  <jakub@redhat.com>
3232
3233         * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
3234         2003-11-24 changes.
3235         * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
3236         NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
3237         * posix/bug-regex19.c (tests): Add new tests.
3238
3239         * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
3240
3241         * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
3242         after checking syntax.  Optimize.
3243         (calc_first): Fix comment.
3244         * posix/bug-regex13.c (tests): Add new tests.
3245
3246 2003-12-21  Roland McGrath  <roland@redhat.com>
3247
3248         * manual/arith.texi (Parsing of Integers): Typo fix.
3249
3250 2003-12-20  Roland McGrath  <roland@frob.com>
3251
3252         * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
3253         add missing dereference of IFREQS before counting loop.
3254
3255 2003-12-21  Andreas Schwab  <schwab@suse.de>
3256
3257         * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
3258         constraints.
3259
3260 2003-12-20  Ulrich Drepper  <drepper@redhat.com>
3261
3262         * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
3263
3264 2003-12-18  Ulrich Drepper  <drepper@redhat.com>
3265
3266         * stdio-common/printf_fp.c: Add support to use alternative decimal
3267         digits.
3268         * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
3269         __printf_fp.  Patch by Hamed Malek <hamed@bamdad.org>.
3270
3271 2003-12-18  Carlos O'Donell  <carlos@baldric.uwo.ca>
3272
3273         * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
3274         reload PIC if we need to call __syscall_error, cleanup asm.
3275
3276 2003-12-17  Carlos O'Donell  <carlos@baldric.uwo.ca>
3277
3278         * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
3279         FE_ALL_EXCEPT before complimenting.
3280         * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
3281         and gcc '+r' constraint.
3282         * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
3283         * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
3284         * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
3285         exception bits, OR with envp, pass to fesetenv.
3286         * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
3287         exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
3288         triggered by M_PI/69.69 converted to single precision.
3289         * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
3290         bits not raised exception bits.
3291
3292         * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
3293         correct build strings.
3294         * sysdeps/hppa/dl-fptr.h: New file.
3295         * sysdeps/hppa/dl-fptr.c: Removed.
3296         * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
3297         remove const qualifier for map.
3298         (_dl_function_address): Removed.
3299         * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
3300         PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
3301         DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
3302         DL_DT_FINI_ADDRESS use the previous two macros.
3303
3304 2003-12-17  Jakub Jelinek  <jakub@redhat.com>
3305
3306         * malloc/mtrace.c (tr_old_memalign_hook): New variable.
3307         (tr_memalignhook): New function.
3308         (mtrace): Register tr_memalignhook.
3309         (muntrace): Deregister tr_memalignhook.
3310         * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
3311         call it directly instead of memalign_internal.
3312
3313 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
3314
3315         * misc/mntent_r.c: Change encoding to match recently changed decoder.
3316         Patch by Alexander Achenbach <xela@slit.de>.
3317
3318 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
3319
3320         * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
3321         vrregset_t.
3322
3323 2003-12-16  Steven Munroe  <sjmunroe@us.ibm.com>
3324
3325         * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
3326         conditional to include typedef elf_vrreg_t.
3327
3328 2003-12-17  Paolo Bonzini  <bonzini@gnu.org>
3329
3330         * posix/regexec.c (re_search_internal): Limit search to the
3331         beginning of the buffer if the initial states are empty for
3332         contexts that do not include CONTEXT_BEGBUF or, if
3333         !preg->newline_anchor, that do not include any one of
3334         CONTEXT_BEGBUF and CONTEXT_NEWLINE.
3335
3336 2003-12-17  Andreas Jaeger  <aj@suse.de>
3337
3338         * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
3339         Kevin Pedretti <pedretti@ieee.org>.
3340
3341 2003-12-17  Ulrich Drepper  <drepper@redhat.com>
3342
3343         * elf/rtld.c: Don't use strong_alias to define _rtld_local.  This
3344         removes the visibility attributes which might be defined earlier
3345         for some gcc versions.  Instead spell out what strong_alias does
3346         plus the visibility.
3347
3348 2003-12-16  Petter Reinholdtsen  <pere@hungry.com>
3349
3350         * posix/regex_internal.h: Make sure the regex code compile
3351         with non-GCC compilers by hiding attributes.
3352
3353 2003-12-16  Jakub Jelinek  <jakub@redhat.com>
3354             Paolo Bonzini  <bonzini@gnu.org>
3355
3356         * posix/regexec.c (group_nodes_into_DFAstates): Never produce
3357         dests_ch items that are empty.
3358
3359 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
3360
3361         * posix/regexec.c (check_arrival): Remove duplicate test.
3362
3363 2003-12-15  Ulrich Drepper  <drepper@redhat.com>
3364
3365         * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
3366         * posix/regex_internal.c: Likewise.
3367         * posix/regexec.c: Likewise.
3368         Patch by Paolo Bonzini.
3369
3370 2003-12-14  Paolo Bonzini  <bonzini@gnu.org>
3371
3372         * posix/regex_internal.c (re_acquire_state_context):
3373         Compare the node sets after all the other comparisons.
3374
3375 2003-12-13  Paolo Bonzini  <bonzini@gnu.org>
3376
3377         * posix/regexec.c (find_subexp_node, check_arrival,
3378         check_arrival_add_next_nodes, check_arrival_expand_ecl,
3379         check_arrival_expand_ecl_sub, expand_bkref_cache):
3380         Rename the FL_OPEN parameter to TYPE, which is either
3381         OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP.  Callers adjusted.
3382
3383 2003-12-12  Andreas Jaeger  <aj@suse.de>
3384
3385         * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
3386         to syscall.
3387
3388 2003-12-11  Ulrich Drepper  <drepper@redhat.com>
3389
3390         * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
3391         There might always be processes which have no vDSO.
3392         * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
3393         * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3394
3395 2003-12-11  Carlos O'Donell  <carlos@baldric.uwo.ca>
3396
3397         * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
3398         in the right order.
3399
3400 2003-12-01  Jes Sorensen  <jes@wildopensource.com>
3401
3402         * rt/tst-clock.c (do_test): Print message when skipping
3403         CLOCK_PROCESS_CPUTIME_ID test.
3404
3405         * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
3406         Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
3407
3408 2003-12-02  David Mosberger  <davidm@hpl.hp.com>
3409
3410         * sysdeps/ia64/elf/initfini.c: Add unwind info.
3411
3412         * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
3413         attribute "unused".
3414         (elf_machine_dynamic): Mark with attributes "unused" and "const".
3415         (elf_machine_runtime_setup): Likewise.
3416
3417         * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
3418         attribute "always_inline".
3419         * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
3420         Likewise.
3421
3422         * configure.in: Check whether compiler has libunwind support.
3423         * config.make.in (have-cc-with-libunwind): New variable.
3424         * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
3425         * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
3426         mention -lunwind.
3427
3428 2003-11-12  David Mosberger  <davidm@hpl.hp.com>
3429
3430         * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
3431         Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
3432         Likewise for DO_INLINE_SYSCALL.  Make INTERNAL_SYSCALL use
3433         DO_INLINE_SYSCALL.
3434
3435         * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
3436         instead of DO_CALL().
3437
3438         * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
3439         of DO_CALL().
3440
3441         * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
3442         to take advantage of DO_CALL() macro.
3443         * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
3444         * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
3445
3446         * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
3447         program header.  On ia64, the check failed previously because
3448         there are two program headers.
3449
3450 2003-12-10  Andreas Jaeger  <aj@suse.de>
3451             Ruediger Oertel  <ro@suse.de>
3452
3453         * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
3454
3455 2003-12-07  Ulrich Drepper  <drepper@redhat.com>
3456
3457         * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
3458         * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
3459         * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
3460         * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
3461         * sysdeps/generic/s_nexttowardf.c: Likewise.
3462         * math/Makefile (tests): Add bug-nexttoward.
3463         * math/bug-nexttoward.c: New file.
3464
3465         * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
3466         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
3467         * math/bug-nextafter.c (main): Add tests for overflow and negative
3468         values.
3469
3470 2003-12-06  Ulrich Drepper  <drepper@redhat.com>
3471
3472         * math/Makefile (tests): Add bug-nextafter.
3473         * math/bug-nextafter.c: New file.
3474         * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
3475         * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
3476         * math/libm-test.inc (nextafter_test): Add test for overflow after
3477         +/-FLT_MAX etc.
3478
3479 2003-12-04  Steven Munroe  <sjmunroe@us.ibm.com>
3480
3481         * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
3482         of fenv.
3483         * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
3484
3485 2003-12-05  Martin Schwidefsky  <schwidefsky@de.ibm.com>
3486
3487         * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
3488         statements.
3489         * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
3490         * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
3491         (END): Add cfi_endproc directive.
3492         * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
3493         * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
3494         cfi_startproc and cfi_endproc directive.
3495         * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
3496         * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
3497         * sysdeps/s390/s390-32/add_n.S&n