]> git.ipfire.org Git - thirdparty/glibc.git/blame - ChangeLog.14
Port the 0x7efe...feff pattern to GCC 6.
[thirdparty/glibc.git] / ChangeLog.14
CommitLineData
d3b52028
UD
12004-04-19 Roland McGrath <roland@redhat.com>
2
3 * rt/tst-mqueue9.c (do_test): Initialize RESULT.
4
52004-04-19 Jakub Jelinek <jakub@redhat.com>
6
7 * sysdeps/unix/sysv/linux/mq_unlink.c (mq_unlink): Change EPERM into
8 EACCES.
9 * rt/Makefile (tests): Add tst-mqueue9.
10 * rt/tst-mqueue9.c: New test.
11 * rt/tst-mqueue4.c (do_test): Add test for mq_unlink of a too long
12 name component.
13
142004-04-19 Ulrich Drepper <drepper@redhat.com>
15
16 * rt/tst-mqueue7.c (do_test): Make newargv const.
17
182004-04-18 Randolph Chung <tausq@debian.org>
19
20 * sysdeps/hppa/elf/entry.h: New file.
21 * sysdeps/hppa/machine-gmon.h: New file.
22 * sysdeps/unix/sysv/linux/hppa/profil-counter.h: Don't use x86 version.
23
242004-04-18 Ulrich Drepper <drepper@redhat.com>
25
26 * sysdeps/unix/sysv/linux/powerpc/rt-sysdep.c: New file.
27 * sysdeps/unix/sysv/linux/powerpc/Makefile (librt-routines): Add
28 rt-sysdep.
29
30 * rt/tst-mqueue5.c (mqsend): Don't inline.
31 (mqrecv): Likewise.
32
33 * rt/tst-timer4.c: Include <string.h>.
34
352004-04-17 Jakub Jelinek <jakub@redhat.com>
36
37 * rt/Makefile (tests): Add tst-mqueue8.
38 * rt/tst-mqueue8.c: New test.
39
40 * sysdeps/unix/sysv/linux/s390/Makefile (librt-routines): Add
41 rt-sysdep.
42 * sysdeps/unix/sysv/linux/s390/rt-sysdep.S: New file.
43
442004-03-26 H.J. Lu <hongjiu.lu@intel.com>
45
46 * sysdeps/unix/sysv/linux/wordsize-64/fxstat.c (__fxstat): Don't
47 use "struct kernel_stat".
48
492004-04-02 H.J. Lu <hongjiu.lu@intel.com>
50
51 * sysdeps/ia64/memcmp.S: Fix symbol.
52
532004-04-04 Carlos O'Donell <carlos@baldric.uwo.ca>
54
55 * sysdeps/hppa/Dist: Add bits/link.h elf/entry.h.
56
57 * sysdeps/hppa/bits/link.h: New file.
58
59 * sysdeps/hppa/dl-machine.h (__hppa_init_bootstrap_fdesc_table):
60 Initialze the fdesc table for the generic code.
61 (elf_machine_dynamic): Use asm version.
62 (elf_machine_load_addresss): Simplify asm by calling
63 elf_machine_dynamic.
64 (elf_machine_fixup_plt): Correct comment.
65 (elf_machine_profile_fixup_plt): New.
66 (elf_machine_runtime_setup): Check PLT exists, if lazy=1 process
67 normally, else relocate all the absolute entries.
68 (RTLD_START): Fix comments.
69 (TRAMPOLINE_TEMPLATE): Reformat assembly, add return pointer for
70 calls to profile_fixup.
71 (ELF_MACHINE_SIZEOF_JMP_SLOT, DL_STATIC_FUNCTION_ADDRESS,
72 DL_PLATFORM_INIT): Define.
73 (DL_FUNCTION_ADDRESS): Remove.
74 (dl_platform_init): New.
75 (elf_machine_rela): Use generic fdesc code, and process all COPY
76 relocations. Use __attribute__((always_inline)).
77 (elf_machine_rela_relative): Add sanity checks, remove IPLT
78 processing, print error message in default case. Use
79 __attribute__((always_inline)).
80 (elf_machine_lazy_rel): Use __attribute__((always_inline)).
81
822004-04-05 Carlos O'Donell <carlos@baldric.uwo.ca>
83
84 * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Use only sw[0]
85 and call feraiseexcept.
86
872003-11-15 Randolph Chung <tausq@debian.org>
88
89 * gmon/gmon.c (__monstartup): Round kcountsize to multiples of
90 the froms[] array so the array is properly aligned.
91
922004-04-05 H.J. Lu <hongjiu.lu@intel.com>
93
94 * Makeconfig (libgcc_eh): Add -Wl,.
95
96 * configure.in: Add -lgcc_s for --as-needed check.
97
982004-04-16 Kaz Kojima <kkojima@rr.iij4u.or.jp>
99
100 * sysdeps/sh/elf/configure.in: New file.
101
1022004-04-17 Ulrich Drepper <drepper@redhat.com>
103
104 * iconvdata/gconv-modules: Add PT154 and RK1048 entries.
105 * iconvdata/tst-tables.sh: Add PT154 and RK1048.
106 * iconvdata/Makefile (modules): Add PT154 anhd RK1048.
107 (distribute): Add pt154.c and rk1048.c.
108 (gen-8bit-gap-modules): Add pt154 and rk1048.
109 * icondata/pt154.c: New file.
110 * iconvdata/rk1048.c: New file.
111
112 * rt/tst-timer4.c: Disable some tests, mark errors better.
113
1142004-04-16 Ulrich Drepper <drepper@redhat.com>
115
116 * rt/tst-mqueue6.c (mqsend): Don't inline.
117 (mqrecv): Likewise.
118
119 * rt/tst-mqueue3.c (do_test): Cope with kernel without mq support.
120
121 * sysdeps/ieee754/bits/nan.h (__nan_union): Add __attribute_used__
122 attribute to keep gcc quiet.
123
1242004-04-16 Jakub Jelinek <jakub@redhat.com>
125
126 * misc/syslog.c (vsyslog): Avoid freeing failbuf.
127
1282004-04-15 Jakub Jelinek <jakub@redhat.com>
129
130 * rt/Makefile (tests): Add tst-timer4.
131 * rt/tst-timer4.c: New test.
132
1332004-04-15 Jakub Jelinek <jakub@redhat.com>
134
135 * rt/tst-mqueue5.c (rtmin_code): New variable.
136 (rtmin_handler): Set it.
137 (thr, do_child, do_test): Also check rtmin_code.
138
1392004-04-14 Jakub Jelinek <jakub@redhat.com>
140
141 * rt/Makefile (tests): Add tst-mqueue7.
142 (tst-mqueue7-ARGS): Set.
143 * rt/tst-mqueue7.c: New test.
144
1452004-04-13 Jakub Jelinek <jakub@redhat.com>
146
147 * rt/Makefile (tests): Add tst-mqueue5 and tst-mqueue6.
148 * rt/tst-mqueue1.c (do_one_test): Bitwise or check_attrs () into
149 result instead of replacing it. Use TEMP_FAILURE_RETRY around
150 waitpid, kill child if waitpid failed.
151 (do_test): Bitwise or check_attrs () into result instead of replacing
152 it. Change temp mq name.
153 * rt/tst-mqueue5.c: New test.
154 * rt/tst-mqueue6.c: New test.
155 * rt/tst-mqueue.h: Include stdio.h, unistd.h, sys/uio.h.
156 (temp_mq_list, delete_temp_mqs): Remove.
157 (temp_mq_fd): New variable.
158 (do_cleanup, do_prepare): New functions.
159 (add_temp_mq): Rewritten to use a temp file.
160 (PREPARE): Define.
161 (CLEANUP_HANDLER): Change to do_cleanup ().
162
163 * rt/tst-timer3.c: Don't fail if _POSIX_THREADS is not available.
164
1652004-04-13 Thorsten Kukuk <kukuk@suse.de>
166
167 * sysdeps/s390/ffs.c: Include limits.h
168
1692004-04-13 Kaz Kojima <kkojima@rr.iij4u.or.jp>
170
171 * sysdeps/unix/sysv/linux/sh/sysdep.h (SUBSTITUTE_ARGS_1,
172 SUBSTITUTE_ARGS_2, SUBSTITUTE_ARGS_3, SUBSTITUTE_ARGS_4,
173 SUBSTITUTE_ARGS_5, SUBSTITUTE_ARGS_6, SUBSTITUTE_ARGS_7): Load
174 argument values into temporary variables.
175
1762004-04-15 Atsushi Nemoto <anemo@mba.ocn.ne.jp>
177
178 * sysdeps/mips/dl-machine.h (RTLD_START): Do not use nested .end.
179
1802004-04-12 Ulrich Drepper <drepper@redhat.com>
181
182 * rt/Makefile (tests): Add tst-timer3.
183 * rt/tst-timer3.c: New file. By Roland McGrath.
184
1852004-04-08 Ulrich Drepper <drepper@redhat.com>
186
187 * rt/tst-mqueue3.c: New file.
188 * rt/Makefile (tests): Add tst-mqueue3.
189
1902004-04-08 Jakub Jelinek <jakub@redhat.com>
191
192 * rt/tst-mqueue1.c: New file.
193 * rt/tst-mqueue2.c: New file.
194 * rt/tst-mqueue4.c: New file.
195 * rt/Makefile (tests): Add tst-mqueue1, tst-mqueue2, tst-mqueue4.
196
197 * rt/Versions (librt): Add mq_*@@GLIBC_2.3.4.
198 * rt/Makefile (headers): Add mqueue.h and bits/mqueue.h.
199 (mq-routines): Set.
200 (librt-routines): Use it.
201 * rt/mqueue.h: New file.
202 * include/mqueue.h: New file.
203 * sysdeps/generic/bits/mqueue.h: New file.
204 * sysdeps/generic/mq_setattr.c: New file.
205 * sysdeps/generic/mq_getattr.c: New file.
206 * sysdeps/generic/mq_notify.c: New file.
207 * sysdeps/generic/mq_close.c: New file.
208 * sysdeps/generic/mq_send.c: New file.
209 * sysdeps/generic/mq_unlink.c: New file.
210 * sysdeps/generic/mq_receive.c: New file.
211 * sysdeps/generic/mq_timedreceive.c: New file.
212 * sysdeps/generic/mq_timedsend.c: New file.
213 * sysdeps/generic/mq_open.c: New file.
214 * sysdeps/unix/sysv/linux/bits/local_lim.h (MQ_PRIO_MAX): Define.
215 * sysdeps/unix/sysv/linux/bits/mqueue.h: New file.
216 * sysdeps/unix/sysv/linux/syscalls.list: Add mq_timedsend,
217 mq_timedreceive and mq_setattr.
218 * sysdeps/unix/sysv/linux/mq_getattr.c: New file.
219 * sysdeps/unix/sysv/linux/mq_notify.c: New file.
220 * sysdeps/unix/sysv/linux/mq_close.c: New file.
221 * sysdeps/unix/sysv/linux/mq_send.c: New file.
222 * sysdeps/unix/sysv/linux/mq_unlink.c: New file.
223 * sysdeps/unix/sysv/linux/mq_receive.c: New file.
224 * sysdeps/unix/sysv/linux/mq_open.c: New file.
225
2262004-04-09 Andreas Schwab <schwab@suse.de>
227
228 * sysdeps/unix/sysv/linux/ia64/sysdep.h (DO_INLINE_SYSCALL): Move
229 LOAD_ARGS_##nr up front and add LOAD_REGS_##nr.
230 (LOAD_ARGS_0, LOAD_ARGS_1, LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4)
231 (LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
232 variables.
233 (LOAD_REGS_0, LOAD_REGS_1, LOAD_REGS_2, LOAD_REGS_3, LOAD_REGS_4)
234 (LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
235 syscall argument registers.
236
237 * sysdeps/unix/sysv/linux/x86_64/sysdep.h (INTERNAL_SYSCALL): Add
238 LOAD_REGS_##nr.
239 (LOAD_ARGS_0, LOAD_ARGS_1, LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4)
240 (LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
241 variables.
242 (LOAD_REGS_0, LOAD_REGS_1, LOAD_REGS_2, LOAD_REGS_3, LOAD_REGS_4)
243 (LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
244 syscall argument registers.
245
2462004-04-09 Andreas Schwab <schwab@suse.de>
247
248 * sysdeps/unix/sysv/linux/m68k/sysdep.h (INTERNAL_SYSCALL): Add
249 LOAD_REGS_##nr.
250 (LOAD_ARGS_0, LOAD_ARGS_1, LOAD_ARGS_2, LOAD_ARGS_3, LOAD_ARGS_4)
251 (LOAD_ARGS_5, LOAD_ARGS_6): Load argument values into temporary
252 variables.
253 (LOAD_REGS_0, LOAD_REGS_1, LOAD_REGS_2, LOAD_REGS_3, LOAD_REGS_4)
254 (LOAD_REGS_5, LOAD_REGS_6): New macros to actually load the
255 syscall argument registers.
256
2572004-04-09 Thorsten Kukuk <kukuk@suse.de>
258
259 * sysdeps/s390/ffs.c: Don't add ffsl weak alias on s390x.
260
2612004-04-09 Steven Munroe <sjmunroe@us.ibm.com>
262
263 * sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: New file.
264
2652004-04-08 Ulrich Drepper <drepper@redhat.com>
266
267 * po/nl.po: Update from translation team.
268
2692004-04-04 Ulrich Drepper <drepper@redhat.com>
270
271 * math/test-tgmath.c: Declare compile_testl inly if we will define it.
272
2732004-04-03 Ulrich Drepper <drepper@redhat.com>
274
275 * sysdeps/powerpc/powerpc64/ffsll.c: New file.
276
277 * string/test-ffs.c: Also test ffsl and ffsll.
278
279 * sysdeps/powerpc/ffs.c: Don't define ffsl for ppc64.
280
281 * sysdeps/powerpc/powerpc64/bits/atomic.h: Never use matching
282 constraints for asm mem parameters.
283 * sysdeps/powerpc/bits/atomic.h: Likewise.
284
285 * sysdeps/powerpc/elf/libc-start.c: No need for a separate
286 function for __aux_init_cache.
287
288 * inet/test-ifaddrs.c: Fight warnings.
289
290 * argp/argp-help.c: Fight warnings.
291
292 * include/time.h: Declare __difftime.
293
294 * sysdeps/unix/sysv/linux/internal_statvfs.c: Restructure to avoid
295 duplication in 64-bit version.
296 * sysdeps/unix/sysv/linux/wordsize-64/internal_statvfs64.c: New file.
297
2982004-04-03 Andreas Jaeger <aj@suse.de>
299
300 * nis/nss-nis.c: Include <string.h> for strncmp.
301
3022004-03-30 H.J. Lu <hongjiu.lu@intel.com>
303
304 * Makeconfig (link-libc-static): Use $(static-gnulib) instead
305 of $(gnulib).
306 (libgcc_eh): New variable.
307 (gnulib): Use it variable.
308 (static-gnulib): New variable.
309 * Makerules (LDLIBS-c.so): Use $(static-gnulib) instead of $(gnulib).
310 * config.make.in (have-as-needed): New variable.
311 * configure.in: Check if linker supports --as-needed.
312
3132004-04-02 Ulrich Drepper <drepper@redhat.com>
314
315 * sysdeps/unix/sysv/linux/internal_statvfs64.c: New file.
316 * sysdeps/unix/sysv/linux/Makefile [subdir=io] (sysdep_routines):
317 Add internal_statvfs64.
318 * sysdeps/unix/sysv/linux/internal_statvfs.c: Allow to be used to
319 compile 64bit version.
320 * sysdeps/unix/sysv/linux/statvfs64.c: Use __fstatfs64 and skip
321 compatibility code if __ASSUME_STATFS64 is defined.
322 * sysdeps/unix/sysv/linux/fstatvfs64.c: Likewise.
323
324 * sysdeps/unix/sysv/linux/statfs64.c: Don't add __no_statfs64 if
325 __ASSUME_STATFS64 != 0.
326
3272004-04-02 Thorsten Kukuk <kukuk@firun.suse.de>
328
329 * nis/nss_nis/nis-ethers.c (saveit): Fix return codes in error case.
330 * nis/nss_nis/nis-initgroups.c (saveit): Likewise.
331 * nis/nss_nis/nis-proto.c (saveit): Likewise.
332 * nis/nss_nis/nis-rpc.c (saveit): Likewise.
333 * nis/nss_nis/nis-service.c (saveit): Likewise.
334
3352004-04-02 Jakub Jelinek <jakub@redhat.com>
336
337 * nis/nss: Add SERVICES_AUTHORITATIVE.
338 * nis/nss-nis.h (NSS_FLAG_SET, NSS_FLAG_NETID_AUTHORITATIVE,
339 NSS_FLAG_SERVICES_AUTHORITATIVE): Define.
340 (_nis_default_nss_flags, _nis_check_default_nss): New decls.
341 (_nis_default_nss): New inline.
342 * nis/nss-nis.c: Include ctype.h, stdio.h and stdio_ext.h.
343 (_nis_default_nss_flags, default_nss): New variables.
344 (_nis_check_default_nss): New function.
345 * nis/nss_nis/nis-initgroups.c: Don't include stdio.h and
346 stdio_ext.h.
347 (check_default_nss, default_nss): Move to nss-nis.c.
348 (init): Removed.
349 (_nss_nis_initgroups_dyn): Use _nis_default_nss ().
350 * nis/nss_nis/nis-services.c (_nss_nis_getservbyname_r): If
351 NSS_FLAG_SERVICES_AUTHORITATIVE and services.byservicename lookup
352 fails, return immediately.
353
3542004-04-01 Roland McGrath <roland@redhat.com>
355
356 * elf/tst-execstack.c (do_test): Make F static.
357
3582004-04-01 Ulrich Drepper <drepper@redhat.com>
359
360 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Use
361 __sigprocmask not sigprocmask.
362 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
363 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
364
365 * include/string.h: Add libc_hidden_builtin_proto for memcmp.
366 * sysdeps/generic/memcmp.c: Add libc_hidden_builtin_def.
367 * sysdeps/i386/memcmp.S: Likewise.
368 * sysdeps/i386/i686/memcmp.S: Likewise.
369 * sysdeps/ia64/memcmp.S: Likewise.
370 * sysdeps/sparc/sparc64/memcmp.S: Likewise.
371
372 * sysdeps/unix/sysv/linux/sigprocmask.c: Include <string.h>.
373 * time/mktime.c: Likewise.
374 * misc/getpass.c: Likewise.
375
376 * time/difftime.c (__difftime): New renamed. Make old name alias.
377 Use __difftime in recursive call.
378
379 * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Use
380 __tcgetattr() instead of tcgetattr().
381
382 * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S [SHARED]:
383 Use __GI_exit.
384
385 * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S [SHARED]: Use
386 __GI__exit.
387
388 * sysdeps/powerpc/fpu/bits/mathinline.h: Add __signbitf and
389 __signbit inlines.
390
391 * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Use
392 __sigprocmask not sigprocmask.
393 * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
394 * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
395
396 * elf/elf.h: Define more ppc64 specific dynamic tags.
397
3982004-04-01 Jakub Jelinek <jakub@redhat.com>
399
400 * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): If protocol
401 is NULL, instead of trying yp_match (name/tcp), yp_match (name/udp),
402 yp_all, try yp_match (name), yp_all.
403
4042004-04-01 Ulrich Drepper <drepper@redhat.com>
405
406 * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add handling for
407 ignored entries. Ignore AT_IGNOREPPC.
408
4092004-03-31 Andreas Jaeger <aj@suse.de>
410
411 * libio/fileops.c (new_do_write): Return _IO_size_t to make 64-bit
412 clean.
413
4142004-03-31 Ulrich Drepper <drepper@redhat.com>
415
416 * locale/programs/localedef.c (construct_output_path): Remove
417 remnants of CEN locale names.
418
4192004-03-30 Thorsten Kukuk <kukuk@suse.de>
420
421 * sysdeps/unix/sysv/linux/alpha/bits/termios.h: Add IUTF8.
422 * sysdeps/unix/sysv/linux/bits/termios.h: Likewise.
423 * sysdeps/unix/sysv/linux/mips/bits/termios.h: Likewise.
424 * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
425 * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
426
4272004-03-30 Richard Henderson <rth@redhat.com>
428
429 * sysdeps/alpha/remqu.S: Detect power-of-two special case.
430
4312004-03-30 Ulrich Drepper <drepper@redhat.com>
432
433 * sysdeps/generic/libc-start.c (LIBC_START_MAIN)
434 [HAVE_CLEANUP_JMP_BUF]: Call __nptl_deallocate_tsd.
435
4362004-03-30 Jakub Jelinek <jakub@redhat.com>
437
438 * nis/nss_nis/nis-service.c (_nss_nis_getservbyname_r): If protocol
439 == NULL, try name/tcp and name/udp first before falling back into
440 the sequential scanning. Use services.byname database for
441 sequential scanning.
442 (_nss_nis_getservbyport_r): Likewise. Just allocate sizeof (int) * 3
443 chars for integer.
444
445 * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Convert
446 proto to host by order for snprintf.
447
4482004-03-30 Ulrich Drepper <drepper@redhat.com>
449
450 * nss/getent.c (services_keys): Don't implement lookups with
451 missing protocol using getservent loop, just pass NULL.
452
453 * sysdeps/unix/sysv/linux/i386/setgroups.c (setgroups): Avoid
454 comparison with limit if we can rely on the syscall being available.
455
456 * nis/nss_nis/nis-initgroups.c: Implement getting the information
457 from the netid.byname map if the system administrator allows this.
458 * nis/Makefile (distribute): Add nss.
459 * nis/nss: New file.
460
461 * grp/initgroups.c (initgroups): Limit the initial allocation to 64
462 entries to not allocate too much on systems with really high limits.
463
4642004-03-30 Jakub Jelinek <jakub@redhat.com>
465
466 * nis/nss_nis/nis-service.c (struct search_t): New type.
467 (dosearch): New function.
468 (_nss_nis_getservbyname_r): Use it. Call yp_get_default_domain
469 unconditionally.
470 (_nss_nis_getservbyport_r): Likewise.
471
4722004-03-29 Alexandre Oliva <aoliva@redhat.com>
473
474 * sysdeps/unix/sysv/linux/sched_getaffinity.c: Prepend GLIBC_ to
475 version names is SHLIB_COMPAT check.
476 * sysdeps/unix/sysv/linux/sched_setaffinity.c: Likewise.
477
4782004-03-29 Ulrich Drepper <drepper@redhat.com>
479
480 * nis/nss_nis/nis-rpc.c (saveit): Improve memory handling. No need to
481 allocate multiple blocks.
482 (internal_nis_endrpcent): Adjust accordingly.
483 * nis/nss_nis/nis-proto.c (saveit): Improve memory handling. No need
484 to allocate multiple blocks.
485 (internal_nis_endprotoent): Adjust accordingly.
486 * nis/nss_nis/nis-initgroups.c (saveit): Improve memory handling. No
487 need to allocate multiple blocks.
488 (_nss_nis_initgroups_dyn): Adjust accordingly.
489 * nis/nss_nis/nis-ethers.c (saveit): Improve memory handling. No need
490 to allocate multiple blocks.
491 (internal_nis_endetherent): Adjust accordingly.
492 * nis/nss_nis/nis-service.c (saveit): Improve memory handling. No need
493 to allocate multiple blocks.
494 (internal_nis_endservent): Adjust accordingly.
495
496 * nss/getXXbyYY_r.c: Return 0 for NSS_STATUS_NOTFOUND.
497
4982004-03-26 Thorsten Kukuk <kukuk@suse.de>
499
500 * nis/nss_nis/nis-grp.c (_nss_nis_getgrnam_r): Don't
501 set errno if group does not exist.
502
5032004-03-28 Ulrich Drepper <drepper@redhat.com>
504
505 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
506 _SC_SIGQUEUE_MAX.
507
5082004-03-26 Ulrich Drepper <drepper@redhat.com>
509
510 * elf/dl-caller.c: New file.
511 * include/caller.h: New file.
512 * Makefile (distribute): Add include/caller.h.
513 * elf/Makefile (dl-routines): Add dl-caller.
514 * elf/dl-load.c (_dl_map_object_from_fd): Record l_text_end.
515 * elf/dl-open.c (check_libc_caller): Removed.
516 (dl_open_worker): Use __check_caller instead.
517 * elf/rtld.c (_rtld_global_ro): Initialize _dl_check_caller.
518 (_dl_start_final): Record l_text_end for ld.so map.
519 (dl_main): Record l_text_end for main object and vdso.
520 * include/link.h (struct link_map): Add l_text_end field.
521 * sysdeps/generic/ldsodefs.h (struct rtld_global_ro): Add
522 _dl_check_caller field.
523 Define enum allowmask. Add declaration of _dl_check_caller.
524 * sysdeps/unix/sysv/linux/dl-execstack.c: Also use __check_caller test.
525
5262004-03-26 Richard Henderson <rth@redhat.com>
527
528 * sysdeps/alpha/Makefile <gnulib> (sysdep_routines): Merge divrem
529 variable, add unsigned variants.
530 * sysdeps/alpha/divrem.h: Remove file.
531 * sysdeps/alpha/div_libc.h: New file.
532 * sysdeps/alpha/divl.S: Rewrite from scratch.
533 * sysdeps/alpha/reml.S: Likewise.
534 * sysdeps/alpha/divq.S: Likewise.
535 * sysdeps/alpha/remq.S: Likewise.
536 * sysdeps/alpha/divlu.S: New file.
537 * sysdeps/alpha/remlu.S: New file.
538 * sysdeps/alpha/divqu.S: New file.
539 * sysdeps/alpha/remqu.S: New file.
540
5412004-03-26 Ulrich Drepper <drepper@redhat.com>
542
543 * elf/dl-open.c (check_libc_caller): Fix typo.
544
5452004-03-26 Jakub Jelinek <jakub@redhat.com>
546
547 * elf/tst-dlmodcount.c: Include stddef.h and stdlib.h.
548
5492003-03-25 Richard Henderson <rth@redhat.com>
550
551 * sysdeps/alpha/backtrace.c: New file.
552
5532004-03-25 Ulrich Drepper <drepper@redhat.com>
554
555 * iconvdata/utf-7.c: Remove inline from isdirect, isxdirect, and
556 isxbase64.
557
5582004-03-25 Richard Henderson <rth@redhat.com>
559
560 * sysdeps/generic/strtol_l.c (__strtol_ul_max_tab,
561 __strtol_ull_max_tab, __strtol_ull_rem_tab, __strtol_ul_rem_tab,
562 cutoff_tab, cutlim_tab, jmax_tab): New.
563 (__strtol_l): Use them to avoid runtime division.
564
5652004-03-24 Roland McGrath <roland@redhat.com>
566
567 * Makerules ($(common-objpfx)shlib.lds): Don't use \n in rhs of sed
568 substitutions; the semicolon terminators are enough for ld anyway.
569
570 * elf/dl-deps.c (_dl_map_object_deps): Use alloca instead of
571 dynamically sized auto array in function already using alloca.
572 * locale/programs/ld-ctype.c (ctype_output): Likewise.
573 * locale/programs/ld-time.c (time_output): Likewise.
574 * elf/dl-misc.c (_dl_debug_vdprintf): Use macro instead of const for
575 IOV array size.
576 * locale/programs/charmap.c (charmap_read): Avoid alloca (or strdupa)
577 when also using dynamically-sized auto array.
578 * locale/programs/locfile.c (locfile_read): Likewise.
579 * locale/programs/repertoire.c (repertoire_read): Likewise.
580 * nis/nis_print_group_entry.c (nis_print_group_entry): Likewise.
581 * locale/programs/locarchive.c (enlarge_archive): Likewise.
582 * posix/annexc.c (check_header): Likewise.
583
584 * iconv/gconv_int.h (norm_add_slashes): Don't handle null SUFFIX.
585 strlen ("") gets optimized away just as well.
586 * intl/loadmsgcat.c (_nl_init_domain_conv): Update caller.
587 * wcsmbs/wcsmbsload.c (__wcsmbs_load_conv): Likewise.
588
589 * Makefile ($(objpfx)c++-types-check.out): Reduce duplication in
590 defining this target. Also elide -Wstrict-prototypes from CFLAGS.
591
5922004-03-24 Ulrich Drepper <drepper@redhat.com>
593
594 * stdio-common/vfscanf.c [!COMPILE_WSCANF] (TOLOWER): Cast first
595 parameter to unsigned char.
596 * sysdeps/generic/strcasestr.c [_LIBC] (TOLOWER): Likewise.
597
5982004-03-24 Jakub Jelinek <jakub@redhat.com>
599
600 * stdlib/strtod_l.c (INTERNAL (__STRTOF)): Clear the rest of retval,
601 not just one limb if RETURN_LIMB_SIZE > 2. Fix shifting up if
602 RETURN_LIMB_SIZE > 2.
603
604 * stdio-common/printf_fp.c (__printf_fp): For IEEE quad long double
605 on 32-bit architectures reserve 8 limbs instead of 4.
606
6072004-03-23 Jakub Jelinek <jakub@redhat.com>
608
609 * sysdeps/unix/sysv/linux/alpha/sysdep.h (__NR_pread, __NR_pwrite):
610 Define to __NR_p{read,write}64 if not defined.
611 * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.h (__NR_pread,
612 __NR_pwrite): Define to __NR_p{read,write}64 if not defined instead
613 of defining it the other way around.
614 * sysdeps/unix/sysv/linux/alpha/syscalls.list: Move common syscalls
615 for 64bit arches to sysdeps/unix/sysv/linux/wordsize-64/syscalls.list.
616 * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list: Likewise.
617 * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list: Likewise.
618 * sysdeps/unix/sysv/linux/ia64/syscalls.list: Likewise.
619 * sysdeps/unix/sysv/linux/x86_64/syscalls.list: Likewise.
620 * sysdeps/unix/sysv/linux/alpha/pread64.c: Removed.
621 * sysdeps/unix/sysv/linux/alpha/getrlimit64.c: Removed.
622 * sysdeps/unix/sysv/linux/alpha/glob64.c: Removed.
623 * sysdeps/unix/sysv/linux/alpha/truncate64.c: Removed.
624 * sysdeps/unix/sysv/linux/alpha/xstat64.c: Removed.
625 * sysdeps/unix/sysv/linux/alpha/pwrite64.c: Removed.
626 * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: Removed.
627 * sysdeps/unix/sysv/linux/alpha/mmap64.c: Removed.
628 * sysdeps/unix/sysv/linux/alpha/fxstat64.c: Removed.
629 * sysdeps/unix/sysv/linux/alpha/setrlimit64.c: Removed.
630 * sysdeps/unix/sysv/linux/alpha/ftruncate64.c: Removed.
631 * sysdeps/unix/sysv/linux/alpha/sendfile64.c: Removed.
632 * sysdeps/unix/sysv/linux/alpha/lxstat64.c: Removed.
633 * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: Removed.
634 * sysdeps/unix/sysv/linux/alpha/statfs64.c: Removed.
635 * sysdeps/unix/sysv/linux/alpha/fstatfs64.c: Removed.
636 * sysdeps/unix/sysv/linux/s390/s390-64/pread64.c: Removed.
637 * sysdeps/unix/sysv/linux/s390/s390-64/getrlimit64.c: Removed.
638 * sysdeps/unix/sysv/linux/s390/s390-64/glob64.c: Removed.
639 * sysdeps/unix/sysv/linux/s390/s390-64/readdir64_r.c: Removed.
640 * sysdeps/unix/sysv/linux/s390/s390-64/truncate64.c: Removed.
641 * sysdeps/unix/sysv/linux/s390/s390-64/xstat64.c: Removed.
642 * sysdeps/unix/sysv/linux/s390/s390-64/pwrite64.c: Removed.
643 * sysdeps/unix/sysv/linux/s390/s390-64/getdents64.c: Removed.
644 * sysdeps/unix/sysv/linux/s390/s390-64/readdir_r.c: Removed.
645 * sysdeps/unix/sysv/linux/s390/s390-64/lxstat.c: Removed.
646 * sysdeps/unix/sysv/linux/s390/s390-64/readdir.c: Removed.
647 * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: Removed.
648 * sysdeps/unix/sysv/linux/s390/s390-64/mmap64.c: Removed.
649 * sysdeps/unix/sysv/linux/s390/s390-64/xstat.c: Removed.
650 * sysdeps/unix/sysv/linux/s390/s390-64/fxstat64.c: Removed.
651 * sysdeps/unix/sysv/linux/s390/s390-64/setrlimit64.c: Removed.
652 * sysdeps/unix/sysv/linux/s390/s390-64/ftruncate64.c: Removed.
653 * sysdeps/unix/sysv/linux/s390/s390-64/getdents.c: Removed.
654 * sysdeps/unix/sysv/linux/s390/s390-64/lxstat64.c: Removed.
655 * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: Removed.
656 * sysdeps/unix/sysv/linux/s390/s390-64/readdir64.c: Removed.
657 * sysdeps/unix/sysv/linux/s390/s390-64/fxstat.c: Removed.
658 * sysdeps/unix/sysv/linux/s390/s390-64/statfs64.c: Removed.
659 * sysdeps/unix/sysv/linux/s390/s390-64/fstatfs64.c: Removed.
660 * sysdeps/unix/sysv/linux/powerpc/powerpc64/glob64.c: Removed.
661 * sysdeps/unix/sysv/linux/powerpc/powerpc64/truncate64.c: Removed.
662 * sysdeps/unix/sysv/linux/powerpc/powerpc64/xstat64.c: Removed.
663 * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: Removed.
664 * sysdeps/unix/sysv/linux/powerpc/powerpc64/fxstat64.c: Removed.
665 * sysdeps/unix/sysv/linux/powerpc/powerpc64/ftruncate64.c: Removed.
666 * sysdeps/unix/sysv/linux/powerpc/powerpc64/lxstat64.c: Removed.
667 * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: Removed.
668 * sysdeps/unix/sysv/linux/sparc/sparc64/pread64.c: Removed.
669 * sysdeps/unix/sysv/linux/sparc/sparc64/getrlimit64.c: Removed.
670 * sysdeps/unix/sysv/linux/sparc/sparc64/glob64.c: Removed.
671 * sysdeps/unix/sysv/linux/sparc/sparc64/readdir64_r.c: Removed.
672 * sysdeps/unix/sysv/linux/sparc/sparc64/truncate64.c: Removed.
673 * sysdeps/unix/sysv/linux/sparc/sparc64/xstat64.c: Removed.
674 * sysdeps/unix/sysv/linux/sparc/sparc64/pwrite64.c: Removed.
675 * sysdeps/unix/sysv/linux/sparc/sparc64/getdents64.c: Removed.
676 * sysdeps/unix/sysv/linux/sparc/sparc64/readdir_r.c: Removed.
677 * sysdeps/unix/sysv/linux/sparc/sparc64/readdir.c: Removed.
678 * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: Removed.
679 * sysdeps/unix/sysv/linux/sparc/sparc64/mmap64.c: Removed.
680 * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat64.c: Removed.
681 * sysdeps/unix/sysv/linux/sparc/sparc64/setrlimit64.c: Removed.
682 * sysdeps/unix/sysv/linux/sparc/sparc64/ftruncate64.c: Removed.
683 * sysdeps/unix/sysv/linux/sparc/sparc64/sendfile64.c: Removed.
684 * sysdeps/unix/sysv/linux/sparc/sparc64/getdents.c: Removed.
685 * sysdeps/unix/sysv/linux/sparc/sparc64/lxstat64.c: Removed.
686 * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: Removed.
687 * sysdeps/unix/sysv/linux/sparc/sparc64/readdir64.c: Removed.
688 * sysdeps/unix/sysv/linux/sparc/sparc64/statfs64.c: Removed.
689 * sysdeps/unix/sysv/linux/sparc/sparc64/fstatfs64.c: Removed.
690 * sysdeps/unix/sysv/linux/ia64/pread64.c: Removed.
691 * sysdeps/unix/sysv/linux/ia64/getrlimit64.c: Removed.
692 * sysdeps/unix/sysv/linux/ia64/glob64.c: Removed.
693 * sysdeps/unix/sysv/linux/ia64/readdir64_r.c: Removed.
694 * sysdeps/unix/sysv/linux/ia64/truncate64.c: Removed.
695 * sysdeps/unix/sysv/linux/ia64/xstat64.c: Removed.
696 * sysdeps/unix/sysv/linux/ia64/pwrite64.c: Removed.
697 * sysdeps/unix/sysv/linux/ia64/getdents64.c: Removed.
698 * sysdeps/unix/sysv/linux/ia64/readdir_r.c: Removed.
699 * sysdeps/unix/sysv/linux/ia64/lxstat.c: Removed.
700 * sysdeps/unix/sysv/linux/ia64/readdir.c: Removed.
701 * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: Removed.
702 * sysdeps/unix/sysv/linux/ia64/mmap64.c: Removed.
703 * sysdeps/unix/sysv/linux/ia64/xstat.c: Removed.
704 * sysdeps/unix/sysv/linux/ia64/fxstat64.c: Removed.
705 * sysdeps/unix/sysv/linux/ia64/setrlimit64.c: Removed.
706 * sysdeps/unix/sysv/linux/ia64/ftruncate64.c: Removed.
707 * sysdeps/unix/sysv/linux/ia64/sendfile64.c: Removed.
708 * sysdeps/unix/sysv/linux/ia64/getdents.c: Removed.
709 * sysdeps/unix/sysv/linux/ia64/lxstat64.c: Removed.
710 * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: Removed.
711 * sysdeps/unix/sysv/linux/ia64/readdir64.c: Removed.
712 * sysdeps/unix/sysv/linux/ia64/fxstat.c: Removed.
713 * sysdeps/unix/sysv/linux/ia64/statfs64.c: Removed.
714 * sysdeps/unix/sysv/linux/ia64/fstatfs64.c: Removed.
715 * sysdeps/unix/sysv/linux/x86_64/pread64.c: Removed.
716 * sysdeps/unix/sysv/linux/x86_64/getrlimit64.c: Removed.
717 * sysdeps/unix/sysv/linux/x86_64/glob64.c: Removed.
718 * sysdeps/unix/sysv/linux/x86_64/readdir64_r.c: Removed.
719 * sysdeps/unix/sysv/linux/x86_64/truncate64.c: Removed.
720 * sysdeps/unix/sysv/linux/x86_64/xstat64.c: Removed.
721 * sysdeps/unix/sysv/linux/x86_64/pwrite64.c: Removed.
722 * sysdeps/unix/sysv/linux/x86_64/getdents64.c: Removed.
723 * sysdeps/unix/sysv/linux/x86_64/readdir_r.c: Removed.
724 * sysdeps/unix/sysv/linux/x86_64/lxstat.c: Removed.
725 * sysdeps/unix/sysv/linux/x86_64/readdir.c: Removed.
726 * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: Removed.
727 * sysdeps/unix/sysv/linux/x86_64/mmap64.c: Removed.
728 * sysdeps/unix/sysv/linux/x86_64/xstat.c: Removed.
729 * sysdeps/unix/sysv/linux/x86_64/fxstat64.c: Removed.
730 * sysdeps/unix/sysv/linux/x86_64/setrlimit64.c: Removed.
731 * sysdeps/unix/sysv/linux/x86_64/ftruncate64.c: Removed.
732 * sysdeps/unix/sysv/linux/x86_64/sendfile64.c: Removed.
733 * sysdeps/unix/sysv/linux/x86_64/getdents.c: Removed.
734 * sysdeps/unix/sysv/linux/x86_64/lxstat64.c: Removed.
735 * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: Removed.
736 * sysdeps/unix/sysv/linux/x86_64/readdir64.c: Removed.
737 * sysdeps/unix/sysv/linux/x86_64/fxstat.c: Removed.
738 * sysdeps/unix/sysv/linux/x86_64/statfs64.c: Removed.
739 * sysdeps/unix/sysv/linux/x86_64/fstatfs64.c: Removed.
740 * sysdeps/unix/sysv/linux/alpha/Implies: New file.
741 * sysdeps/unix/sysv/linux/alpha/getdents64.c: New file.
742 * sysdeps/unix/sysv/linux/s390/s390-64/Implies: New file.
743 * sysdeps/unix/sysv/linux/powerpc/powerpc64/Implies: New file.
744 * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: New file.
745 * sysdeps/unix/sysv/linux/sparc/sparc64/Implies: New file.
746 * sysdeps/unix/sysv/linux/sparc/sparc64/lxstat.c: New file.
747 * sysdeps/unix/sysv/linux/sparc/sparc64/xstat.c: New file.
748 * sysdeps/unix/sysv/linux/sparc/sparc64/fxstat.c: New file.
749 * sysdeps/unix/sysv/linux/wordsize-64/statvfs64.c: New file.
750 * sysdeps/unix/sysv/linux/wordsize-64/fstatvfs64.c: New file.
751 * sysdeps/unix/sysv/linux/wordsize-64/pread64.c: New file.
752 * sysdeps/unix/sysv/linux/wordsize-64/fstatvfs.c: New file.
753 * sysdeps/unix/sysv/linux/wordsize-64/getrlimit64.c: New file.
754 * sysdeps/unix/sysv/linux/wordsize-64/glob64.c: New file.
755 * sysdeps/unix/sysv/linux/wordsize-64/readdir64_r.c: New file.
756 * sysdeps/unix/sysv/linux/wordsize-64/truncate64.c: New file.
757 * sysdeps/unix/sysv/linux/wordsize-64/xstat64.c: New file.
758 * sysdeps/unix/sysv/linux/wordsize-64/pwrite64.c: New file.
759 * sysdeps/unix/sysv/linux/wordsize-64/getdents64.c: New file.
760 * sysdeps/unix/sysv/linux/wordsize-64/readdir_r.c: New file.
761 * sysdeps/unix/sysv/linux/wordsize-64/lxstat.c: New file.
762 * sysdeps/unix/sysv/linux/wordsize-64/readdir.c: New file.
763 * sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise.c: New file.
764 * sysdeps/unix/sysv/linux/wordsize-64/mmap64.c: New file.
765 * sysdeps/unix/sysv/linux/wordsize-64/xstat.c: New file.
766 * sysdeps/unix/sysv/linux/wordsize-64/fxstat64.c: New file.
767 * sysdeps/unix/sysv/linux/wordsize-64/setrlimit64.c: New file.
768 * sysdeps/unix/sysv/linux/wordsize-64/ftruncate64.c: New file.
769 * sysdeps/unix/sysv/linux/wordsize-64/sendfile64.c: New file.
770 * sysdeps/unix/sysv/linux/wordsize-64/getdents.c: New file.
771 * sysdeps/unix/sysv/linux/wordsize-64/statvfs.c: New file.
772 * sysdeps/unix/sysv/linux/wordsize-64/lxstat64.c: New file.
773 * sysdeps/unix/sysv/linux/wordsize-64/posix_fadvise64.c: New file.
774 * sysdeps/unix/sysv/linux/wordsize-64/readdir64.c: New file.
775 * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: New file.
776 * sysdeps/unix/sysv/linux/wordsize-64/fxstat.c: New file.
777 * sysdeps/unix/sysv/linux/wordsize-64/statfs64.c: New file.
778 * sysdeps/unix/sysv/linux/wordsize-64/fstatfs64.c: New file.
779 * sysdeps/unix/sysv/linux/ia64/Implies: New file.
780 * sysdeps/unix/sysv/linux/x86_64/Implies: New file.
781
7822004-03-22 Richard Henderson <rth@redhat.com>
783
784 * sysdeps/alpha/s_fabs.S: Remove file.
785 * sysdeps/alpha/s_copysign.S: Remove file.
786
7872004-03-22 Jakub Jelinek <jakub@redhat.com>
788
789 * sysdeps/unix/sysv/linux/sparc/sparc32/getpagesize.c
790 (__getpagesize): Avoid warning about writing into read-only memory.
791
792 * string/Makefile (routines): Add xpg-strerror.
793 * string/string.h (strerror_r): If __USE_XOPEN2K but not __USE_GNU,
794 redirect strerror_r to __xpg_strerror_r.
795 * string/Versions (libc): Add __xpg_strerror_r@@GLIBC_2.3.4.
796 * sysdeps/generic/xpg-strerror.c: New file.
797 * sysdeps/mach/xpg-strerror.c: New file.
798
7992004-03-22 Joseph S. Myers <jsm@polyomino.org.uk>
800
801 * sunrpc/rpc/xdr.h (IXDR_GET_LONG, IXDR_PUT_LONG): Do not use
802 casts as lvalues.
803
8042004-03-22 Andreas Jaeger <aj@suse.de>
805
806 * elf/tst-dlmodcount.c (unload): Remove unused variable.
807
808 * misc/tst-mntent.c (main): Use tmpfile instead of tmpnam.
809
8102004-03-20 Roland McGrath <roland@frob.com>
811
812 * sysdeps/mach/hurd/dl-execstack.c: New file.
813
8142004-03-20 Ulrich Drepper <drepper@redhat.com>
815
816 * po/ca.po: Update from translation team.
817
8182004-03-20 Andreas Jaeger <aj@suse.de>
819
820 * sysdeps/unix/sysv/linux/sched_getaffinity.c
821 (__sched_getaffinity_old): Fix interface.
822 * sysdeps/unix/sysv/linux/sched_setaffinity.c
823 (__sched_setaffinity_old): Likewise.
824
825 * sysdeps/unix/sysv/linux/sched_setaffinity.c: Include <alloca.h>.
826
8272004-03-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
828
829 * sysdeps/unix/sysv/linux/kernel-features.h
830 (__ASSUME_CLONE_THREAD_FLAGS ): Define for newer SH kernel.
831 (__ASSUME_TGKILL, __ASSUME_UTIMES): Likewise.
832 * sysdeps/unix/sysv/linux/sh/socket.S: Add unwind information.
833
8342004-03-19 Ulrich Drepper <drepper@redhat.com>
835
836 * time/tzfile.c (__tzfile_default): Correct setting of rule_stdoff
837 and rule_dstoff after reading the posixrules file.
838
8392004-03-18 Ulrich Drepper <drepper@redhat.com>
840
841 * malloc/malloc.c (__posix_memalign): Correct alignment check.
842 Reported by Don Heller <dheller@cse.psu.edu>.
843
8442004-03-18 Jakub Jelinek <jakub@redhat.com>
845
846 * sysdeps/generic/dl-cache.c (_dl_load_cache_lookup): Remove hwcap
847 variable and weak_extern for _dl_hwcap.
848 (_DL_HWCAP_TLS_MASK): Define.
849 (HWCAP_CHECK): Fix checking of non-platform hwcap bits. Use
850 lib->osversion instead of cache_new->libs[middle].osversion.
851
852 * stdio-common/asprintf.c: Remove USE_IN_LIBIO conditionals.
853 * stdio-common/dprintf.c: Likewise.
854 * stdio-common/fprintf.c: Likewise.
855 * stdio-common/getline.c: Likewise.
856 * stdio-common/getw.c: Likewise.
857 * stdio-common/perror.c: Likewise.
858 * stdio-common/printf-prs.c: Likewise.
859 * stdio-common/printf.c: Likewise.
860 * stdio-common/printf_size.c: Likewise.
861 * stdio-common/psignal.c: Likewise.
862 * stdio-common/putw.c: Likewise.
863 * stdio-common/scanf.c: Likewise.
864 * stdio-common/snprintf.c: Likewise.
865 * stdio-common/sprintf.c: Likewise.
866 * stdio-common/sscanf.c: Likewise.
867 * stdio-common/tstgetln.c: Likewise.
868 * stdio-common/vfprintf.c: Likewise.
869
8702004-03-18 Paul Eggert <eggert@cs.ucla.edu>
871
872 * posix/getopt.h (__GNUC_PREREQ) [!defined __THROW]: Define
873 if not defined, fixing a typo (it used to be defined if
874 __GNUC__ was not defined).
875
8762004-03-18 Ulrich Drepper <drepper@redhat.com>
877
878 * posix/sched.h: Change sched_getaffinity and sched_setaffinity
879 interfaces: add new second parameter.
880 * sysdeps/generic/sched_getaffinity.c: Implement interface change.
881 * sysdeps/generic/sched_setaffinity.c: Likewise.
882 * sysdeps/unix/sysv/linux/sched_getaffinity.c: Likewise. Add
883 compatibility interface.
884 * sysdeps/unix/sysv/linux/sched_setaffinity.c: Likewise.
885 * sysdeps/unix/sysv/linux/Versions: Add versions for changed
886 interfaces.
887
8882004-03-18 Roland McGrath <roland@redhat.com>
889
890 * manual/Makefile (stamp-summary): Use -k option to sort,
891 not traditional key selection syntax.
892 Reported by Jim Gifford <giffordj@linkline.com>.
893
8942004-03-18 Jakub Jelinek <jakub@redhat.com>
895
896 * elf/ldconfig.c: Include stdbool.h.
897
8982004-03-18 Roland McGrath <roland@redhat.com>
899
900 * elf/ldconfig.c (parse_conf_include): New function.
901 (parse_conf): Call it to parse lines starting with "include".
902 Remaining words are glob patterns for more config files to read.
903 Take additional bool argument to disable opt_chroot processing.
904 (main): Update caller.
905
9062004-03-17 Ulrich Drepper <drepper@redhat.com>
907
908 * sysdeps/unix/sysv/linux/ia64/ioperm.c (_iopl): Match EPERM error
909 the x86 code produces in case of mission permissions.
910 Patch by Bernd Schmidt <bernds@redhat.com>.
911
912 * resolv/netdb.h: Define AI_IDN_ALLOW_UNASSIGNED,
913 AI_IDN_USE_STD3_ASCII_RULES, NI_IDN_ALLOW_UNASSIGNED, and
914 NI_IDN_USE_STD3_ASCII_RULES.
915 * inet/getnameinfo.c (getnameinfo): Implement handling of
916 NI_IDN_ALLOW_UNASSIGNED and NI_IDN_USE_STD3_ASCII_RULES.
917 * sysdeps/posix/getaddrinfo.c (gaih_inet): Implement handling of
918 AI_IDN_ALLOW_UNASSIGNED and AI_IDN_USE_STD3_ASCII_RULES.
919
9202004-03-17 Jakub Jelinek <jakub@redhat.com>
921
922 * sysdeps/x86_64/hp-timing.h (HP_TIMING_NOW): Make asm volatile.
923
9242004-03-16 Jakub Jelinek <jakub@redhat.com>
925
926 * sysdeps/powerpc/powerpc32/fpu/__longjmp.S: Spelling.
927 (JB_SIZE): Undefine before including __longjmp-common.S again.
928 * sysdeps/powerpc/powerpc32/fpu/setjmp.S: Spelling.
929 (JB_SIZE): Undefine before including setjmp-common.S again.
930 * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Spelling.
931 * sysdeps/powerpc/powerpc64/bsd-setjmp.S: Spelling.
932 * sysdeps/powerpc/powerpc32/bsd-_setjmp.S: Spelling.
933 * sysdeps/powerpc/powerpc32/bsd-setjmp.S: Spelling.
934 * sysdeps/powerpc/sigjmp.c: Spelling.
935
9362004-03-16 Ulrich Drepper <drepper@redhat.com>
937
938 * include/ctype.h: For libc, define isdigit, isdigit_l, and
939 __isdigit_l as simple comparison macros.
940 * include/wctype.h: For libc, define iswdigit, iswdigit_l, and
941 __iswdigit_l as simple comparison macros.
942 * wctype/wcfuncs_l.c: #undef iswdigit and __iswdigit.
943
9442004-03-15 Ulrich Drepper <drepper@redhat.com>
945
946 * sysdeps/sparc/fpu/bits/mathinline.h: Restore missing #ifdef.
947 Patch by Richard Henderson.
948
9492004-03-16 Jakub Jelinek <jakub@redhat.com>
950
951 * sysdeps/generic/strtold_l.c (STRING_TYPE, STRTOLD, __STRTOLD,
952 __STRTOD, INTERNAL, INTERNAL1): Define, use them.
953 [! USE_WIDE_CHAR] (INTERNAL (__STRTOLD)): Add libc_hidden_def.
954
955 * inet/getnameinfo.c: Include stdlib.h.
956
9572004-03-15 Richard Henderson <rth@redhat.com>
958
959 * math/Makefile (headers): Add bits/huge_valf.h, bits/huge_vall.h,
960 and bits/inf.h.
961 * math/math.h: Include them.
962
963 * sysdeps/alpha/fpu/bits/mathdef.h: Remove INFINITY.
964 * sysdeps/arm/fpu/bits/mathdef.h: Likewise.
965 * sysdeps/generic/bits/mathdef.h: Likewise.
966 * sysdeps/i386/fpu/bits/mathdef.h: Likewise.
967 * sysdeps/ia64/fpu/bits/mathdef.h: Likewise.
968 * sysdeps/m68k/fpu/bits/mathdef.h: Likewise.
969 * sysdeps/mips/fpu/bits/mathdef.h: Likewise.
970 * sysdeps/powerpc/fpu/bits/mathdef.h: Likewise.
971 * sysdeps/sh/sh4/fpu/bits/mathdef.h: Likewise.
972 * sysdeps/sparc/fpu/bits/mathdef.h: Likewise.
973 * sysdeps/x86_64/fpu/bits/mathdef.h: Likewise.
974
975 * sysdeps/arm/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
976 (HUGE_VALF, HUGE_VALL): Remove.
977 * sysdeps/ieee754/bits/huge_val.h: Likewise.
978 * sysdeps/sh/bits/huge_val.h: Likewise.
979
980 * sysdeps/generic/bits/huge_val.h (HUGE_VAL): Use __builtin_huge_val.
981 * sysdeps/generic/bits/huge_valf.h: New file.
982 * sysdeps/generic/bits/huge_vall.h: New file.
983 * sysdeps/generic/bits/inf.h: New file.
984 * sysdeps/ieee754/bits/huge_valf.h: New file.
985 * sysdeps/ieee754/bits/inf.h: New file.
986 * sysdeps/i386/bits/huge_val.h: Remove file.
987 * sysdeps/i386/bits/huge_vall.h: New file.
988 * sysdeps/ia64/bits/huge_val.h: Remove file.
989 * sysdeps/ia64/bits/huge_vall.h: New file.
990 * sysdeps/ieee754/ldbl-128/bits/huge_vall.h: New file.
991 * sysdeps/m68k/bits/huge_val.h: Remove file.
992 * sysdeps/m68k/bits/huge_vall.h: New file.
993 * sysdeps/s390/bits/huge_val.h: Remove file.
994 * sysdeps/sh/sh4/fpu/bits/huge_val.h: Remove file.
995 * sysdeps/sparc/bits/huge_vall.h: New file.
996 * sysdeps/sparc/sparc32/fpu/bits/huge_val.h: Remove file.
997 * sysdeps/sparc/sparc64/fpu/bits/huge_val.h: Remove file.
998
999 * sysdeps/ieee754/bits/nan.h (NAN): Use __builtin_nanf.
1000 * sysdeps/mips/bits/nan.h (NAN): Likewise.
1001
10022004-03-15 Ulrich Drepper <drepper@redhat.com>
1003
1004 * iconv/gconv_simple.c (__gconv_transform_utf8_internal): Use only
1005 one copy of error handling code.
1006
1007 * stdio-common/vfscanf.c: Simplify error handling macros. Use
1008 direct locale access functions.
1009
1010 * sysdeps/generic/strcasestr.c (__strcasestr): Optimize use of
1011 tolower function.
1012
10132004-03-13 Jakub Jelinek <jakub@redhat.com>
1014
1015 * sysdeps/unix/sysv/linux/i386/sysconf.c (intel_02_known): Add const.
1016 (handle_amd): New function.
1017 (__sysconf): Handle _SC_LEVEL4_CACHE_LINESIZE here, not in
1018 linux_sysconf. Call handle_amd on AuthenticAMD.
1019 * sysdeps/unix/sysv/linux/x86_64/sysconf.c: Likewise.
1020
10212004-03-14 Ulrich Drepper <drepper@redhat.com>
1022
1023 * wcsmbs/mbsrtowcs.c: Just a wrapper around __mbsrtowcs_l.
1024 * wcsmbs/mbsrtowcs_l.c (__mbsrtowcs_l): Add real implementation here.
1025
1026 Make the non-_l functions wrappers around the _l functions.
1027 * include/monetary.h: Declare __vstrmon_l.
1028 * include/string.h: Add libc_hidden_proto for __strcoll_l and
1029 __strxfrm_l.
1030 * include/time.h: Define ptime_locale_status. Declare
1031 __strptime_internal.
1032 * include/wchar.h: Add libc_hidden_proto for __wcscoll_l and
1033 __wcsxfrm_l.
1034 * stdlib/strfmon.c: Move the code to strfmon_l.c. Add little
1035 wrapper around __vstrfmon_l.
1036 * stdlib/strfmon_l.c: Add real implementation. Split into new
1037 function __vstrfmon_l to allow calling it from strfmon.
1038 * stdlib/strtod.c: Move real code to strtod_l.c and add wrapper.
1039 * stdlib/strtod_l.c: Add real implementation.
1040 * stdlib/strtof.c: Adjust to changed strtod.c.
1041 * stdlib/strtof_l.c: Include strtod_l.c now.
1042 * stdlib/strtold.c: New file.
1043 * stdlib/strtold_l.c: Removed.
1044 * string/strcoll.c: Move real code to strcoll_l.c: Add wrapper.
1045 * string/strcoll_l.c: Add real implementation.
1046 * string/strxfrm.c: Move real code to strxfrm_l.c: Add wrapper.
1047 * string/strxfrm_l.c: Add real implementation.
1048 * sysdeps/generic/strtol.c: Move real implementation to strtol_l.c.
1049 Add wrappers.
1050 * sysdeps/generic/strtol_l.c: Add real implementation.
1051 * sysdeps/generic/strtold.c: Removed.
1052 * sysdeps/generic/strtold_l.c: New file.
1053 * sysdeps/generic/strtoll_l.c: Include strtol_l.c now. Adjust
1054 #defines.
1055 * sysdeps/generic/strtoul_l.c: Likewise.
1056 * sysdeps/generic/strtoull_l.c: Likewise.
1057 * sysdeps/generic/wcstol_l.c: Likewise.
1058 * sysdeps/generic/wcstoll_l.c: Likewise.
1059 * sysdeps/generic/wcstoul_l.c: Likewise.
1060 * sysdeps/generic/wcstoull_l.c: Likewise.
1061 * sysdeps/ieee754/ldbl-128/strtold.c: Removed.
1062 * sysdeps/ieee754/ldbl-128/strtold_l.c: New file.
1063 * sysdeps/ieee754/ldbl-96/strtold.c: Removed.
1064 * sysdeps/ieee754/ldbl-96/strtold_l.c: New file.
1065 * sysdeps/m68k/strtold.c: Removed.
1066 * sysdeps/m68k/strtold_l.c: New file.
1067 * time/strftime.c: Move real code to strftime_l.c. Add wrapper.
1068 * time/strftime_l.c: Add real implementation.
1069 * time/strptime.c: Move real code to strptime_l.c. Add wrapper.
1070 * time/strptime_l.c: Add real implementation.
1071 * time/wcsftime.c: Simplify since only wrappers are defined in
1072 strftime.c.
1073 * time/wcsftime_l.c: Include strftime_l.c.
1074 * wcsmbs/wcscoll.c: Simplify since the file is not used by wcscoll_l.c
1075 anymore.
1076 * wcsmbs/wcscoll_l.c: Include strcoll_l.c.
1077 * wcsmbs/wcsxfrm.c: Simplify since the file is not used by wcsxfrm_l.c
1078 anymore.
1079 * wcsmbs/wcsxfrm_l.c: Include strxfrm_l.c.
1080 * wcsmbs/wcstod.c: Prepare to include new strtod.c.
1081 * wcsmbs/wcstod_l.c: Include strtod_l.c.
1082 * wcsmbs/wcstof.c: Prepare to include new strtof.c.
1083 * wcsmbs/wcstof_l.c: Include strtof_l.c.
1084 * wcsmbs/wcstold.c: Prepare to include new strtold.c.
1085 * wcsmbs/wcstold_l.c: Include strtold_l.c.
1086
1087 * locale/uselocale.c: Use _NL_CURRENT_LOCALE instead of __libc_tsd_get.
1088
1089 * sysdeps/generic/strcasecmp.c: Optimize a bit. It's better to get
1090 a reference to the current locale and then use the _l functions.
1091 * sysdeps/generic/strncase.c: Likewise.
1092
10932004-03-11 Jeroen Dekkers <jeroen@dekkers.cx>
1094
1095 * cppflags-iterator.mk: Change libof-$(cpp-src) to
1096 libof-$(notdir $(cpp-src)).
1097
10982004-03-13 Ulrich Drepper <drepper@redhat.com>
1099
1100 * resolv/netdb.h (EAI_OVERFLOW): Define.
1101 (NI_IDN): Define.
1102 * inet/getnameinfo.c (getnameinfo): Return error in case argument
1103 buffers overflow. Implement NI_IDN.
1104
11052004-03-12 Ulrich Drepper <drepper@redhat.com>
1106
1107 * resolv/netdb.h: Define AI_CANONIDN.
1108 * sysdeps/posix/getaddrinfo.c: Implement AI_CANONIDN.
1109
11102004-03-12 Richard Henderson <rth@redhat.com>
1111
1112 * sysdeps/unix/sysv/linux/alpha/select.S: Fix unwind. Propagate
1113 oldvalue from CENABLE to CDISABLE.
1114
11152004-03-12 Ulrich Drepper <drepper@redhat.com>
1116
1117 * sysdeps/unix/sysv/linux/x86_64/sysconf.c: New file.
1118
1119 * sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
1120
1121 * posix/getconf.c (vars): Add _SC_ values for cache information.
1122 * sysdeps/generic/bits/confname.h: Add _SC_* values for cache
1123 information.
1124 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Reorganize to
1125 allow yet another sysconf function to include the one in this file.
1126 * sysdeps/unix/sysv/linux/i386/sysconf.c: New file.
1127 * sysdeps/generic/sysconf.c: Add default handling for cache line info.
1128
11292004-03-11 Ulrich Drepper <drepper@redhat.com>
1130
1131 * sysdeps/posix/sysconf.c (__sysconf): Add missing support for
1132 some _SC_* values.
1133
11342004-03-10 Chris Heath <chris@heathens.co.nz>
1135
1136 * iconvdata/gconv.map: Add gconv_end (fixes memory leak).
1137
11382004-03-11 Jakub Jelinek <jakub@redhat.com>
1139
1140 * sysdeps/powerpc/powerpc32/__longjmp.S (JB_SIZE): Undefine before
1141 including __longjmp-common.S again.
1142 * sysdeps/powerpc/powerpc64/__longjmp.S (JB_SIZE): Likewise.
1143 * sysdeps/powerpc/powerpc32/setjmp.S (JB_SIZE): Undefine before
1144 including setjmp-common.S again.
1145 * sysdeps/powerpc/powerpc64/setjmp.S (JB_SIZE): Likewise.
1146 * sysdeps/powerpc/novmxsetjmp.h (__novmx__longjmp): Fix type of
1147 first argument in the prototype.
1148 * sysdeps/powerpc/longjmp.c (__vmx__longjmp, __vmx__libc_longjmp):
1149 Remove bogus semicolons.
1150
1151 * sysdeps/s390/dl-tls.h: Only add __tls_get_offset assembly if
1152 IS_IN_rtld.
1153 (__TLS_GET_ADDR): Use __tls_get_offset, not __tls_get_addr.
1154
11552004-03-11 Ulrich Drepper <drepper@redhat.com>
1156
1157 * resolv/ns_ttl.c: Don't add ns_parse_ttl for libresolv.so.
1158
11592004-03-10 Ulrich Drepper <drepper@redhat.com>
1160
1161 * sysdeps/generic/errno.c: Include <dl-sysdep.h>. Use
1162 RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
1163
1164 * elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
1165 points wrappers around the unified code.
1166
11672004-03-11 Richard Henderson <rth@redhat.com>
1168
1169 * sysdeps/unix/sysv/linux/alpha/kernel_stat.h (kernel_stat64): New.
1170 (glibc21_stat): New.
1171 * sysdeps/unix/sysv/linux/alpha/fxstat.c: New file.
1172 * sysdeps/unix/sysv/linux/alpha/lxstat.c: New file.
1173 * sysdeps/unix/sysv/linux/alpha/xstat.c: New file.
1174 * sysdeps/unix/sysv/linux/alpha/xstatconv.c (__xstat_conv): Add
1175 code for _STAT_VER_GLIBC2_3_4.
1176 (__libc_missing_axp_stat64): New.
1177 * sysdeps/unix/sysv/linux/alpha/xstatconv.h: New file.
1178 * sysdeps/unix/sysv/linux/alpha/bits/stat.h (__ST_TIME): New.
1179 (_STAT_VER_GLIBC2_3_4, _STAT_VER_KERNEL64): New.
1180 (struct stat, struct stat64): Update to new format.
1181 (_STATBUF_ST_NSEC): New.
1182
11832004-03-11 Jakub Jelinek <jakub@redhat.com>
1184
1185 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1186 (__novec_swapcontext): Branch to novec_* labels.
1187
11882004-03-10 Ulrich Drepper <drepper@redhat.com>
1189
1190 * posix/getopt.c (_): Don't define here for glibc.
1191
11922004-03-10 Jakub Jelinek <jakub@redhat.com>
1193
1194 * include/libc-symbols.h [__ASSEMBLY__] (compat_text_section,
1195 compat_data_section): Define.
1196 * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIME): Add
1197 attribute_compat_text_section.
1198 * sysdeps/unix/sysv/linux/alpha/wordexp.c (__old_wordexp): Likewise.
1199 * sysdeps/unix/sysv/linux/alpha/oldglob.c (__old_glob,
1200 __old_globfree): Likewise.
1201 * sysdeps/unix/sysv/linux/s390/s390-32/chown.c (__chown_is_lchown):
1202 Likewise.
1203 * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c
1204 (__posix_fadvise64_l32): Likewise.
1205 * sysdeps/unix/sysv/linux/msgctl.c (__old_msgctl): Likewise.
1206 * sysdeps/unix/sysv/linux/powerpc/powerpc32/posix_fadvise64.c
1207 (__posix_fadvise64_l32): Likewise.
1208 * sysdeps/unix/sysv/linux/sparc/sparc32/semctl.c (__old_semctl):
1209 Likewise.
1210 * sysdeps/unix/sysv/linux/semctl.c (__old_semctl): Likewise.
1211 * sysdeps/unix/sysv/linux/posix_fadvise64.c (__posix_fadvise64_l32):
1212 Likewise.
1213 * sysdeps/unix/sysv/linux/shmctl.c (__old_shmctl): Likewise.
1214 * hurd/compat-20.c (_hurd_proc_init_compat_20): Likewise.
1215 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1216 (__swapcontext, __novec_swapcontext): Use END instead of PSEUDO_END.
1217 (__novec_swapcontext, __swapcontext_stub): Add compat_text_section.
1218 * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
1219 (__makecontext_stub): Likewise.
1220 (__novec_makecontext): Likewise. Fix name in END () to match
1221 function name.
1222 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
1223 (__setcontext): Use END instead of PSEUDO_END.
1224 (__novec_setcontext): Add compat_text_section. Use END instead of
1225 PSEUDO_END, fix the name in END () to match function name.
1226 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
1227 (__getcontext, __novec_getcontext): Use END instead of PSEUDO_END.
1228 (__novec_getcontext, __getcontext_stub): Add compat_text_section.
1229
12302004-03-10 Kaz Kojima <kkojima@rr.iij4u.or.jp>
1231
1232 * sysdeps/sh/dl-machine.h: Don't use GL macro if not appropriate.
1233 (COPY_UNALIGNED_WORD): Remove cast used as lvalue.
1234
12352004-03-10 Ulrich Drepper <drepper@redhat.com>
1236
1237 * sysdeps/i386/dl-procinfo.h (HWCAP_IMPORTANT): Remove mmx, add sse2.
1238
12392004-03-10 Richard Henderson <rth@redhat.com>
1240
1241 * sysdeps/generic/errno.c: Disable versioning for rtld.
1242
1243 * sysdeps/generic/Makefile (elf/shared): Add unwind-pe.
1244 * sysdeps/generic/unwind-pe.c: New file.
1245 * sysdeps/generic/unwind-pe.h: Only prototypes for _LIBC without
1246 _LIBC_DEFINITIONS.
1247
12482004-03-10 Ulrich Drepper <drepper@redhat.com>
1249
1250 * include/libc-symbols.h: Define attribute_compat_text_section and
1251 attribute_compat_data_section.
1252 * io/ftw.c: Mark compat code with attribute_compat_text_section.
1253 * libio/iofopncook.c: Likewise.
1254 * libio/oldfileops.c: Likewise.
1255 * libio/oldiofclose.c: Likewise.
1256 * libio/oldiofdopen.c: Likewise.
1257 * libio/oldiofgetpos.c: Likewise.
1258 * libio/oldiofgetpos64.c: Likewise.
1259 * libio/oldiofopen.c: Likewise.
1260 * libio/oldiofsetpos.c: Likewise.
1261 * libio/oldiofsetpos64.c: Likewise.
1262 * libio/oldiopopen.c: Likewise.
1263 * libio/oldpclose.c: Likewise.
1264 * libio/oldtmpfile.c: Likewise.
1265 * nptl/forward.c: Likewise.
1266 * nss/getXXbyYY_r.c: Likewise.
1267 * nss/getXXent_r.c: Likewise.
1268 * posix/tst-vfork1.c: Likewise.
1269 * stdlib/canonicalize.c: Likewise.
1270 * stdlib/old_atexit.c: Likewise.
1271 * sysdeps/generic/glob.c: Likewise.
1272 * sysdeps/posix/posix_fallocate64.c: Likewise.
1273 * sysdeps/unix/sysv/linux/i386/alphasort64.c: Likewise.
1274 * sysdeps/unix/sysv/linux/i386/chown.c: Likewise.
1275 * sysdeps/unix/sysv/linux/i386/glob64.c: Likewise.
1276 * sysdeps/unix/sysv/linux/i386/msgctl.c: Likewise.
1277 * sysdeps/unix/sysv/linux/i386/oldgetrlimit64.c: Likewise.
1278 * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Likewise.
1279 * sysdeps/unix/sysv/linux/i386/readdir64.c: Likewise.
1280 * sysdeps/unix/sysv/linux/i386/readdir64_r.c: Likewise.
1281 * sysdeps/unix/sysv/linux/i386/scandir64.c: Likewise.
1282 * sysdeps/unix/sysv/linux/i386/semctl.c: Likewise.
1283 * sysdeps/unix/sysv/linux/i386/shmctl.c: Likewise.
1284 * sysdeps/unix/sysv/linux/i386/versionsort64.c: Likewise.
1285 * posix/regexec.c: Likewise.
1286
1287 * sysdeps/unix/sysv/linux/i386/syscalls.list: vm86@@GLIBC_2.3.4
1288 should be the default symbol. Having none misses the point.
1289
12902004-03-09 Ulrich Drepper <drepper@redhat.com>
1291
1292 * stdlib/qsort.c (_quicksort): Initialize first stack element [BZ #16].
1293
12942004-03-05 Jakub Jelinek <jakub@redhat.com>
1295
1296 * posix/regexec.c (regexec): Return with error on unknown eflags.
1297 Replace weak_alias with versioned_symbol.
1298 (__compat_regexec): New.
1299 * posix/Versions (libc): Add regexec@GLIBC_2.3.4.
1300
13012004-03-09 Richard Henderson <rth@redhat.com>
1302
1303 * math/math.h (isgreater, isgreaterequal, isless, islessequal,
1304 islessgreater, isunordered): Use builtins if available.
1305 * sysdeps/i386/fpu/bits/mathinline.h: Don't define via builtins.
1306 * sysdeps/m68k/fpu/bits/mathinline.h: Likewise.
1307 * sysdeps/powerpc/fpu/bits/mathinline.h: Likewise.
1308 * sysdeps/sparc/fpu/bits/mathinline.h: Likewise.
1309 * sysdeps/x86_64/fpu/bits/mathinline.h: Likewise.
1310 * sysdeps/alpha/fpu/bits/mathinline.h (isgreater, isgreaterequal,
1311 isless, islessequal, islessgreater): Remove; use default.
1312 (isunordered): Convert inputs to double.
1313
13142004-02-09 Jakub Jelinek <jakub@redhat.com>
1315
1316 * posix/Makefile (tests): Add tst-vfork2.
1317 * posix/tst-vfork1.c (do_test): Fix comment.
1318 * posix/tst-vfork2.c: New test.
1319
13202004-03-09 Ulrich Drepper <drepper@redhat.com>
1321
1322 * elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
1323 derefernce in error message. Pretty printing.
1324
1325 * po/nl.po: Update from translation team.
1326
13272004-03-08 Andreas Schwab <schwab@suse.de>
1328
1329 * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Don't truncate
1330 sysinfo pointer value.
1331
13322004-03-08 Paul Eggert <eggert@cs.ucla.edu>
1333
1334 Merge from gnulib. We now assume C89 or better.
1335 * posix/getopt1.c (const): Remove.
1336 * posix/getopt.c (const): Likewise.
1337 * posix/getopt1.c (getopt_long, _getopt_long_r, getopt_long_only,
1338 _getopt_long_only_r, main): Use prototypes, not old-style definitions.
1339 * posix/getopt.c (exchange, _getopt_initialize, _getopt_internal_r,
1340 _getopt_internal, getopt, main): Likewise.
1341 * posix/getopt.h (getopt, getopt_long, getopt_long_only): Likewise.
1342 * posix/getopt.c [!defined VMS || !HAVE_STRING_H]:
1343 Include <string.h> regardless. No need for <strings.h>.
1344 [!defined _LIBC]: Include "gettext.h" rather than rolling it ourselves.
1345 (_): Define to gettext always.
1346 (my_index): Remove: all uses changed to strchr.
1347 (strlen): Remove declaration.
1348 * posix/getopt.h (struct option.name): Always const char *.
1349
13502004-03-08 Marcus Brinkmann <marcus@gnu.org>
1351
1352 * posix/getopt.h (_getopt_internal): Move to ...
1353 * posix/getopt_int.h: ... here. New file.
1354 * include/getopt_int.h: New file.
1355 * include/getopt.h: Remove libc_hidden_proto for getopt_long
1356 and getopt_long_only.
1357 * posix/getopt1.c: Include "getopt_int.h". Remove
1358 libc_hidden_def for getopt_long and getopt_long_only.
1359 (_getopt_long_r, _getopt_long_only_r): New functions.
1360 * posix/getopt.c: Include "getopt_int.h".
1361 (__getopt_initialized): Variable removed.
1362 (nextchar, ordering, posixly_correct, first_nonopt, last_nonopt):
1363 Static variables removed.
1364 (nonoption_flags_max_len, nonoption_flags_len) [_LIBC &&
1365 USE_NONOPTION_FLAGS]: Static variables removed.
1366 (getopt_data): New static variable.
1367 (SWAP_FLAGS): Use d->__nonoption_flags_len instead
1368 nonoption_flags_len.
1369 (exchange): Add new argument D of type struct getopt_data *.
1370 Replace optind with d->optind, optarg with d->optarg, opterr with
1371 d->opterr, optopt with d->optopt, nextchar with d->__nextchar,
1372 first_nonopt with d->__first_nonopt, last_nonopt with
1373 d->__last_nonopt, d->ordering with d->__ordering,
1374 d->posixly_correct with d->__posixly_correct (which is now an
1375 int instead a string, so fix users), nonoption_flags_len
1376 with d->__nonoption_flags_len, nonoption_flags_max_len with
1377 d->__nonoption_flags_max_len.
1378 (_getopt_initialize): Likewise.
1379 (_getopt_internal): Rename to ...
1380 (_getopt_internal_r): ... this. Also add new argument D of type
1381 struct getopt_data * and use of members of D rather than global or
1382 static variables as described for exchange() above. Add new argument
1383 to invocations of _getopt_initialize and exchange.
1384 (_getopt_internal): Reimplement in terms of _getopt_internal_r.
1385 * argp/argp-parse.c: Include <getopt_int.h>.
1386 [_LIBC]: Do not include <bits/libc-lock.h>.
1387 [!_LIBC && HAVE_CTHREADS_H]: Do not include <cthreads.h>.
1388 [!_LIBC] (_argp_hang): Make static.
1389 (getopt_lock, LOCK_GETOPT, UNLOCK_GETOPT): Remove.
1390 (_argp_unlock_xxx): Remove.
1391 (parser_init): Do not use LOCK_GETOPT.
1392 (parser_finalize): Do not use UNLOCK_GETOPT.
1393 (struct parser): New member OPT_DATA.
1394 (parser_init): Initialize parser->opt_data. Use
1395 parser->opt_data.opterr instead of opterr.
1396 (parser_parse_opt): Use parser->opt_data.optarg instead optarg.
1397 (parser_parse_next): Likewise. Use parser->opt_data.optind
1398 instead optind. Use parser->opt_data.optopt instead of optopt.
1399 Call _getopt_long_only_r and _getopt_long_r instead of
1400 getopt_long_only and getopt_long, and pass the extra argument.
1401
14022004-03-09 Ulrich Drepper <drepper@redhat.com>
1403
1404 * iconv/gconv_db.c: Don't define lock as static. Rename to
1405 __gconv_lock and export from the file.
1406 * iconv/gconv_int.h: Declare __gconv_lock.
1407 * libio/iofclose.c [_LIBC] (_IO_new_fclose): Lock gconv lock
1408 before __gconv_release_step calls.
1409 Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1410
1411 * iconv/gconv_simple.c (internal_ucs4_loop): Fix typo in last change.
1412
1413 * posix/Makefile (tests): Add tst-vfork1.
1414 * posix/tst-vfork1.c: New file.
1415
14162004-03-08 Ulrich Drepper <drepper@redhat.com>
1417
1418 * sysdeps/i386/dl-machine.h: Define ARCH_FIXUP_ATTRIBUTE and use
1419 it in the fixup function declarations.
1420 * elf/dl-runtime.c: If ARCH_FIXUP_ATTRIBUTE is not defined,
1421 provide dummy definition. Use macro in fixup function
1422 definitions.
1423
1424 * sysdeps/unix/sysv/linux/i386/vfork.S: If SAVE_PID and
1425 RESTORE_PID are defined, use it.
1426 * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
1427
1428 * sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
1429
1430 * Makerules: Use extra-modules.mk if modules-names is defined.
1431 * extra-modules.mk: New file.
1432 * dlfcn/Makefile (CPPFLAGS-modcxaatexit.c): Removed.
1433 * elf/Makefile (CFLAGS-interp.c): Add -DNOT_IN_libc=1.
1434 * csu/Makefile ($(objpfx)version-info.h): Pass -DNOT_IN_libc=1 to
1435 compiler.
1436 * Makefile (distribute): Add symbol-hacks.h and extra-modules.mk.
1437 * sysdeps/generic/symbol-hacks.h: New file.
1438 * sysdeps/wordsize-32/symbol-hacks.h: New file.
1439 * sysdeps/wordsize-32/divdi3.c: Define *_internal aliases for __divdi3,
1440 __moddi3, __udivdi3, and __umoddi3.
1441 * include/libc-symbols.h: Include <symbol-hacks.h>.
1442
14432004-03-08 Jeroen Dekkers <jeroen@dekkers.cx>
1444
1445 * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
1446
1447 * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
1448 Don't use INTUSE with _dl_signal_error.
1449
14502004-03-08 Ulrich Drepper <drepper@redhat.com>
1451
1452 * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
1453 Don't use INTUSE with _dl_signal_error.
1454
14552004-03-08 Richard Henderson <rth@redhat.com>
1456
1457 * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
1458 in name.
1459
14602004-03-07 Ulrich Drepper <drepper@redhat.com>
1461
1462 * config.h.in: Add entry for HAVE_LIBIDN.
1463 * configure.in: If libidn add-on present define HAVE_LIBIDN.
1464 * Versions.def: Add entry for libcidn.
1465
14662004-03-07 Simon Josefsson <jas@extundo.com>
1467
1468 * resolv/netdb.h [__USE_GNU]: Add new AI_IDN ai_flags for addrinfo.
1469 [__USE_GNU]: Add new error code EAI_IDN_ENCODE for getaddrinfo.
1470 * sysdeps/posix/getaddrinfo.c: Add prototype for __idna_to_ascii_lz
1471 and define IDNA_SUCCESS.
1472 (gaih_inet): If ai_flags have AI_IDN, invoke __idna_to_ascii_lz.
1473 (getaddrinfo): Fix EAI_BADFLAGS test to include AI_IDN.
1474 All changes only applicable when glibc is compiled with the libidn
1475 add-on.
1476
14772004-03-07 Ulrich Drepper <drepper@redhat.com>
1478
1479 * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
1480 _dl_lookup_symbol_x not _dl_lookup_symbol.
1481
1482 * sysdeps/powerpc/elf/rtld-global-offsets.sym: Adjust for moving
1483 _dl_hwcap into _rtld_global_ro.
1484 * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: Likewise.
1485 * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: Likewise.
1486 * sysdeps/powerpc/powerpc64/__longjmp-common.S: Likewise.
1487 * sysdeps/powerpc/powerpc64/setjmp-common.S: Likewise.
1488 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
1489 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S: Likewise.
1490 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
1491 * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1492 * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S: Likewise.
1493 * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1494
14952004-03-07 Andreas Schwab <schwab@suse.de>
1496
1497 * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
1498
14992004-03-07 Andreas Jaeger <aj@suse.de>
1500
1501 * iconvdata/iso-2022-cn-ext.c (BODY): Remove cast used as lvalue.
1502 * iconvdata/tcvn5712-1.c (EMIT_SHIFT_TO_INIT): Likewise.
1503 * iconvdata/euc-jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
1504 * iconvdata/shift_jisx0213.c (EMIT_SHIFT_TO_INIT): Likewise.
1505 * iconvdata/tscii.c (EMIT_SHIFT_TO_INIT): Likewise.
1506
15072004-03-07 Ulrich Drepper <drepper@redhat.com>
1508
1509 * sysdeps/generic/ldsodefs.h: Move _dl_initial_searclist,
1510 _dl_hp_timing_overhead, _dl_init_all_dirs, and the content of
1511 dl-procinfo.c from _rtld_global to _rtld_global_ro.
1512 * elf/rtld.c: Adjust initializer for _rtld_global_ro.
1513 * elf/dl-close.c: Use GLRO instead of GL where appropriate.
1514 * elf/dl-libc.c: Likewise.
1515 * elf/dl-load.c: Likewise.
1516 * sysdeps/i386/dl-procinfo.h: Likewise.
1517 * sysdeps/i386/i686/hp-timing.h: Likewise.
1518 * sysdeps/ia64/hp-timing.h: Likewise.
1519 * sysdeps/sparc/sparc32/sparcv9/hp-timing.h: Likewise.
1520 * sysdeps/sparc/sparc64/hp-timing.h: Likewise.
1521 * sysdeps/unix/sysv/linux/arm/dl-procinfo.h: Likewise.
1522 * sysdeps/unix/sysv/linux/i386/dl-procinfo.h: Likewise.
1523 * sysdeps/unix/sysv/linux/sparc/sparc32/dl-procinfo.h: Likewise.
1524 * sysdeps/unix/sysv/linux/sparc/sparc64/dl-procinfo.h: Likewise.
1525 * string/test-string.h: Define GLRO.
1526
15272004-03-06 Ulrich Drepper <drepper@redhat.com>
1528
1529 * elf/dl-lookup.c: We don't need for specialized lookup functions.
1530 Combining the functionality does not slow down relocation processing,
1531 it might even speed it up a little.
1532 * sysdeps/generic/ldsodefs.h: Adjust prototypes for lookup function.
1533 Add only one function pointer to rtlf_global_ro.
1534 * elf/do-lookup.h: Replace #ifs with ifs.
1535 * elf/dl-libc.c: Adjust _dl_lookup_* callers.
1536 * elf/dl-reloc.c: Likewise.
1537 * elf/dl-runtime.c: Likewise.
1538 * elf/dl-sym.c: Likewise.
1539 * elf/rtld.c: Likewise. Adjust _rtld_global_ro initialization.
1540
15412004-03-06 Richard Henderson <rth@redhat.com>
1542
1543 * sysdeps/generic/ldsodefs.h (__rtld_local_attribute__,
1544 __rtld_global_attribute__): Undef after use.
1545 (_rtld_local_ro): Define __rtld_local_attribute__ with just hidden
1546 if available.
1547
1548 * soft-fp/quad.h (union _FP_UNION_Q): Add longs structure.
1549 * sysdeps/alpha/Implies: Add alpha/soft-fp.
1550 * sysdeps/alpha/soft-fp/sfp-machine.h: Rewrite for GEM interface.
1551 * sysdeps/alpha/Subdirs: New file.
1552 * sysdeps/alpha/soft-fp/Makefile: New file.
1553 * sysdeps/alpha/soft-fp/Versions: New file.
1554 * sysdeps/alpha/soft-fp/local-soft-fp.h: New file.
1555 * sysdeps/alpha/soft-fp/ots_add.c: New file.
1556 * sysdeps/alpha/soft-fp/ots_cmp.c: new file.
1557 * sysdeps/alpha/soft-fp/ots_cmpe.c: New file.
1558 * sysdeps/alpha/soft-fp/ots_cvtqux.c: New file.
1559 * sysdeps/alpha/soft-fp/ots_cvtqx.c: New file.
1560 * sysdeps/alpha/soft-fp/ots_cvttx.c: New file.
1561 * sysdeps/alpha/soft-fp/ots_cvtxq.c: New file.
1562 * sysdeps/alpha/soft-fp/ots_cvtxt.c: New file.
1563 * sysdeps/alpha/soft-fp/ots_div.c: New file.
1564 * sysdeps/alpha/soft-fp/ots_mul.c: New file.
1565 * sysdeps/alpha/soft-fp/ots_nintxq.c: New file.
1566 * sysdeps/alpha/soft-fp/ots_sub.c: New file.
1567
15682004-03-06 Ulrich Drepper <drepper@redhat.com>
1569
1570 * configure.in: Recognize --enable-bind-now.
1571 * elf/dynamic-link.h (elf_get_dynamic_info): Allow bind-now flags
1572 in ld.so.
1573 * Makerules (LDFLAGS-c.so): Add -z now if so configured.
1574 * elf/Makefile ($(objpfx)ld.so): Likewise.
1575 * config.make.in (bind-now): New definition.
1576
1577 * elf/dl-fini.c (_dl_fini): Combine _dl_debug_printf calls.
1578 * elf/rtld.c (print_statistics): Likewise.
1579
1580 * elf/dl-open.c: No need to pass any parameter to _dl_start_profile.
1581 They are the same in both places.
1582 * elf/dl-profile.c: Likewise.
1583 * elf/rtld.c: Likewise.
1584 * sysdeps/generic/ldsodefs.h: Likewise.
1585 * elf/dl-support.c: Define _dl_profile_output variable. Initialize it.
1586
15872004-03-05 Ulrich Drepper <drepper@redhat.com>
1588
1589 * elf/Versions: Remove functions which are not exported anymore.
1590 * dlfcn/dlerror.c: Call ld.so functions through GLSO.
1591 * dlfcn/dlinfo.c: Likewise.
1592 * elf/dl-close.c: Likewise.
1593 * elf/dl-libc.c: Likewise.
1594 * elf/dl-open.c: Likewise.
1595 * elf/dl-sym.c: Likewise.
1596 * sysdeps/generic/libc-start.c: Likewise.
1597 * elf/dl-debug.c: Remove *_internal definition. Don't use INTUSE for
1598 functions which are not exported anymore.
1599 * elf/dl-deps.c: Likewise.
1600 * elf/dl-dst.h: Likewise.
1601 * elf/dl-error.c: Likewise.
1602 * elf/dl-fini.c: Likewise.
1603 * elf/dl-init.c: Likewise.
1604 * elf/dl-load.c: Likewise.
1605 * elf/dl-lookup.c: Likewise.
1606 * elf/dl-misc.c: Likewise.
1607 * elf/dl-profile.c: Likewise.
1608 * elf/dl-profstub.c: Likewise.
1609 * elf/dl-reloc.c: Likewise.
1610 * elf/dl-runtime.c: Likewise.
1611 * elf/dl-version.c: Likewise.
1612 * elf/do-lookup.h: Likewise.
1613 * include/dlfcn.h: Likewise.
1614 * sysdeps/generic/dl-cache.c: Likewise.
1615 * sysdeps/generic/dl-fptr.c: Likewise.
1616 * sysdeps/generic/dl-origin.c: Likewise.
1617 * sysdeps/generic/dl-sysdep.c: Likewise.
1618 * sysdeps/generic/dl-tls.c: Likewise.
1619 * sysdeps/generic/ldsodefs.h: Likewise.
1620 * sysdeps/i386/dl-tls.h: Likewise.
1621 * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1622 * elf/rtld.c: Likewise. Export function though _rtld_global_ro.
1623
1624 * sysdeps/generic/ldsodefs.h (struct rtld_global): Move
1625 dl_debug_fd to rtld_global_ro.
1626 * elf/rtld.c: Use GLRO instead of GL for dl_debug_fd.
1627 * elf/dl-misc.c: Likewise.
1628
1629 * malloc/malloc.c: Don't call exported interface in the implementation.
1630
1631 * include/wctype.h: Add libc_hidden_proto for __towctrans.
1632 * wctype/towctrans.c: Add libc_hidden_def.
1633
1634 * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
1635
1636 * posix/regexec.c (transit_state): Remove unused variable
1637 next_state.
1638
1639 * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
1640
1641 * sysdeps/generic/ldsodefs.h: Define new structure rtld_global_ro.
1642 Declare _rtld_global_ro and _rtld_local_ro. Move members of
1643 rtld_global structure into the new one if they are modified only
1644 at startup time. Define GLRO to access _rtld_global_ro.
1645 * elf/Versions: Export _rtld_global_ro.
1646 * elf/dl-close.c: Use GLRO instead of GL where appropriate.
1647 * elf/dl-conflict.c: Likewise.
1648 * elf/dl-deps.c: Likewise.
1649 * elf/dl-dst.h: Likewise.
1650 * elf/dl-error.c: Likewise.
1651 * elf/dl-fini.c: Likewise.
1652 * elf/dl-init.c: Likewise.
1653 * elf/dl-load.c: Likewise.
1654 * elf/dl-lookup.c: Likewise.
1655 * elf/dl-minimal.c: Likewise.
1656 * elf/dl-open.c: Likewise.
1657 * elf/dl-profile.c: Likewise.
1658 * elf/dl-reloc.c: Likewise.
1659 * elf/dl-runtime.c: Likewise.
1660 * elf/dl-support.c: Likewise.
1661 * elf/dl-version.c: Likewise.
1662 * elf/do-lookup.h: Likewise.
1663 * elf/rtld.c: Likewise.
1664 * sysdeps/generic/dl-cache.c: Likewise.
1665 * sysdeps/generic/dl-origin.c: Likewise.
1666 * sysdeps/generic/dl-sysdep.c: Likewise.
1667 * sysdeps/generic/libc-start.c: Likewise.
1668 * sysdeps/generic/dl-cache.c: Likewise.
1669 * sysdeps/i386/dl-machine.h: Likewise.
1670 * sysdeps/i386/setfpucw.c: Likewise.
1671 * sysdeps/i386/fpu/fclrexcpt.c: Likewise.
1672 * sysdeps/i386/fpu/fedisblexcpt.c: Likewise.
1673 * sysdeps/i386/fpu/feenablxcpt.c: Likewise.
1674 * sysdeps/i386/fpu/feholdexcpt.c: Likewise.
1675 * sysdeps/i386/fpu/fesetround.c: Likewise.
1676 * sysdeps/i386/fpu/fsetexcptflg.c: Likewise.
1677 * sysdeps/i386/fpu/ftestexcept.c: Likewise.
1678 * sysdeps/unix/sysv/linux/dl-execstat.c: Likewise.
1679 * sysdeps/unix/sysv/linux/dl-librecon.h: Likewise.
1680 * sysdeps/unix/sysv/linux/dl-origin.c: Likewise.
1681 * sysdeps/unix/sysv/linux/dl-osinfo.h: Likewise.
1682 * sysdeps/unix/sysv/linux/getclktck.c: Likewise.
1683 * sysdeps/unix/sysv/linux/getpagesize.c: Likewise.
1684 * sysdeps/unix/sysv/linux/init-first.c: Likewise.
1685 * sysdeps/unix/sysv/linux/prof-freq.c: Likewise.
1686 * sysdeps/unix/sysv/linux/i386/dl-librecon.h: Likewise.
1687 * sysdeps/unix/sysv/linux/i386/sigaction.h: Likewise.
1688 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S: Likewise.
1689 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S: Likewise.
1690 * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S: Likewise.
1691 * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S: Likewise.
1692 * sysdeps/x86_64/dl-machine.h: Likewise.
1693 * sysdeps/sparc/sparc64/dl-machine.h: Likewise.
1694 * sysdeps/sparc/sparc32/dl-machine.h: Likewise.
1695 * sysdeps/s390/s390-64/dl-machine.h: Likewise.
1696 * sysdeps/s390/s390-32/dl-machine.h: Likewise.
1697 * sysdeps/powerpc/powerpc64/dl-machine.h: Likewise.
1698 * sysdeps/powerpc/powerpc32/dl-machine.c: Likewise.
1699 * sysdeps/m68k/dl-machine.h: Likewise.
1700 * sysdeps/ia64/dl-machine.h: Likewise.
1701 * sysdeps/arm/dl-machine.h: Likewise.
1702 * sysdeps/alpha/dl-machine.h: Likewise.
1703 * generic/dl-fptr.c: Likewise.
1704 * mach/hurd/dl-sysdep.c: Likewise.
1705 * unix/sysv/linux/ia64/dl-static.c: Likewise.
1706 * unix/sysv/linux/ia64/getpagesize.c: Likewise.
1707 * unix/sysv/linux/m68k/getpagesize.c: Likewise.
1708 * unix/sysv/linux/sparc/sparc32/getpagesize.c: Likewise.
1709
17102004-03-04 Ulrich Drepper <drepper@redhat.com>
1711
1712 * sysdeps/generic/ldsodefs.h: Don't define _dl_name_match_p as inline.
1713 * elf/dl-misc.c: Define _dl_name_match_p here.
1714 * elf/dl-open.c (check_libc_caller): Don't use _dl_name_match_p.
1715
1716 * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
1717 from the right place.
1718
17192004-01-15 Paolo Bonzini <bonzini@gnu.org>
1720
1721 * posix/regex.h (REG_STARTEND): Define.
1722 * posix/regexec.c (regexec): Check for REG_STARTEND.
1723
17242004-02-29 Paolo Bonzini <bonzini@gnu.org>
1725
1726 * posix/regexec.c (transit_state): Don't handle state == NULL.
1727 Move state log and backreference management...
1728 (merge_state_with_log): ... to this function.
1729 (find_recover_state): New function.
1730 (check_matching): Use find_recover_state to get a non-NULL
1731 state when an invalid state is reached. Compute the amount
1732 of initial characters to be skipped less conservatively when
1733 multi-byte character sets are in use. Do not check
1734 dfa->nbackref if the state log is NULL. Initialize err.
1735 (acquire_init_state_context): Expect err to be initialized.
1736 Fix spacing.
1737
17382004-03-05 Jakub Jelinek <jakub@redhat.com>
1739
1740 * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
1741 * sysdeps/sparc/sparc64/elf/start.S: Likewise.
1742
17432004-03-04 Jakub Jelinek <jakub@redhat.com>
1744
1745 * iconv/iconv_prog.c (process_block): Handle omit_invalid.
1746 If iconv returns EILSEQ with omit_invalid, continue converting
1747 and return 1 if no other errors are seen.
1748 (main): Set status to EXIT_FAILURE whenever process_* returns
1749 nonzero, but only stop processing further files if iy returns
1750 negative value.
1751
17522004-03-03 Jakub Jelinek <jakub@redhat.com>
1753
1754 * sysdeps/unix/sysv/linux/x86_64/posix_fadvise.c: New file.
1755 * sysdeps/unix/sysv/linux/x86_64/posix_fadvise64.c: New file.
1756 * sysdeps/unix/sysv/linux/x86_64/syscalls.list (posix_fadvise64):
1757 Remove.
1758 * sysdeps/unix/sysv/linux/alpha/posix_fadvise.c: New file.
1759 * sysdeps/unix/sysv/linux/alpha/posix_fadvise64.c: New file.
1760 * sysdeps/unix/sysv/linux/alpha/syscalls.list (posix_fadvise64):
1761 Remove.
1762 * sysdeps/unix/sysv/linux/ia64/posix_fadvise.c: New file.
1763 * sysdeps/unix/sysv/linux/ia64/posix_fadvise64.c: New file.
1764 * sysdeps/unix/sysv/linux/ia64/syscalls.list (posix_fadvise64):
1765 Remove.
1766 * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise.c: New file.
1767 * sysdeps/unix/sysv/linux/powerpc/powerpc64/posix_fadvise64.c: New
1768 file.
1769 * sysdeps/unix/sysv/linux/powerpc/powerpc64/syscalls.list: Removed.
1770 * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise.c: New file.
1771 * sysdeps/unix/sysv/linux/s390/s390-64/posix_fadvise64.c: New file.
1772 * sysdeps/unix/sysv/linux/s390/s390-64/syscalls.list
1773 (posix_fadvise64): Remove.
1774 * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise.c: New file.
1775 * sysdeps/unix/sysv/linux/sparc/sparc64/posix_fadvise64.c: New file.
1776 * sysdeps/unix/sysv/linux/sparc/sparc64/syscalls.list
1777 (posix_fadvise64): Remove.
1778
17792004-03-02 Andreas Schwab <schwab@suse.de>
1780
1781 * sysdeps/unix/sysv/linux/powerpc/powerpc32/xstat.c: New file.
1782 * sysdeps/unix/sysv/linux/powerpc/powerpc32/fxstat.c: New file.
1783 * sysdeps/unix/sysv/linux/powerpc/powerpc32/lxstat.c: New file.
1784
17852004-03-01 Ulrich Drepper <drepper@redhat.com>
1786
1787 * nscd/nscd_getgr_r.c (nscd_getgr_r): Add missing initialization
1788 of return value.
1789 * nscd/nscd_gethst_r.c (nscd_gethst_r): Likewise.
1790
1791 * sysdeps/unix/sysv/linux/kernel-features.h: Add support for
1792 __ASSUME_GETDENTS32_D_TYPE.
1793 * sysdeps/unix/sysv/linux/getdents.c: For 2.6.4+ kernels use
1794 getdents syscall again since it provides d_type information.
1795
17962004-02-29 Andreas Jaeger <aj@suse.de>
1797
1798 * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
1799 required.
1800 (Supported Configurations): Add x86_64-*-linux.
1801
18022004-02-28 Ulrich Drepper <drepper@redhat.com>
1803
1804 * sysdeps/i386/i686/memcmp.S: Move table to .rodata. Patch by HJ Lu.
1805
18062004-02-27 Jakub Jelinek <jakub@redhat.com>
1807
1808 * elf/rtld.c (dl_main): Adjust l->l_ld of the vDSO by l->l_addr.
1809 * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start): Only set
1810 GL(dl_sysinfo) if non-zero.
1811
1812 * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
1813
18142004-02-26 Ulrich Drepper <drepper@redhat.com>
1815
1816 * nss/getXXbyYY_r.c: Pass result also to the nscd_* function. Don't
1817 set *result here.
1818 * nscd/nscd_proto.h: Add new argument for pointer to result pointer
1819 to all nscd_* functions.
1820 * nscd/nscd_getgr_r.c (nscd_getgr_r): Add new parameter. Store result
1821 pointer in the address provided by the new parameter if successful.
1822 Otherwise store NULL. Return zero if no entry found.
1823 (__nscd_getgrnam_r, __nscd_getgrgid_r): Add new parameter and pass
1824 it on.
1825 * nscd/nscd_gethst_r.c (nscd_gethst_r): Add new parameter. Store
1826 result pointer in the address provided by the new parameter if
1827 successful. Otherwise store NULL. Return zero if no entry found.
1828 (__nscd_gethostbyname_r, __nscd_gethostbyname2_r,
1829 __nscd_gethostbyaddr_r): Add new parameter and pass it on.
1830 * nscd/nscd_getpw_r.c (nscd_getpw_r): Add new parameter. Store result
1831 pointer in the address provided by the new parameter if successful.
1832 Otherwise store NULL. Return zero if no entry found.
1833 (__nscd_getpwnam_r, __nscd_getpwuid_r): Add new parameter and pass
1834 it on.
1835
18362004-02-26 Jakub Jelinek <jakub@redhat.com>
1837
1838 * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
1839 retval to -1 on error.
1840
18412004-02-26 Ulrich Drepper <drepper@redhat.com>
1842
1843 * stdlib/canonicalize.c (__realpath): Simplify.
1844
1845 * posix/regcomp.c (parse_expression): Avoid duplication in calls
1846 to build_charclass_op.
1847
18482004-02-26 Jakub Jelinek <jakub@redhat.com>
1849
1850 * elf/rtld.c (dl_main): Correctly set up l_map_end and l_addr
1851 in vDSO's link_map, don't assume l_addr == 0. Set GL(dl_sysinfo)
1852 from e_entry only if AT_SYSINFO not present and adjust by l_addr.
1853 Take vDSO into account when inserting rtld into _dl_loaded chain.
1854
18552004-02-26 Ulrich Drepper <drepper@redhat.com>
1856
1857 * sunrpc/svcauth_des.c (authdes_getucred): Removed fixed limit on
1858 number of groups in the cache. Relax the disconnect between the
1859 interface of authdes_getucred and netname2user a bit.
1860 * sunrpc/auth_unix.c (authunix_create_default): Don't allocate
1861 huge arrays on the stack.
1862
1863 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
1864 not cancelable interfaces.
1865
18662004-02-24 Arnold D. Robbins <arnold@skeeve.com>
1867
1868 * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
1869 `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
1870 compiler warning.
1871
18722004-02-24 Nelson H.F. Beebe <beebe@math.utah.edu>
1873
1874 * posix/regcomp.c (parse_expression): Add cast to (const unsigned
1875 char *) in calls to `build_charclass_op'.
1876 * posix/regex_internal.c (build_wcs_buffer): Add cast to char* in call
1877 to `wcrtomb'.
1878 * posix/regex_internal.h (bitset_not, bitset_merge, bitset_not_merge,
1879 bitset_mask, re_string_char_size_a, re_string_wchar_at,
1880 re_string_elem_size_at): Change to use prototypes.
1881 (re_string_char_size_at, re_string_wchar_at,
1882 re_string_elem_size_at): Declare as `internal_function'.
1883
18842004-02-25 Ulrich Drepper <drepper@redhat.com>
1885
1886 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
1887 _SC_NGROUPS_MAX.
1888
18892004-02-23 Jakub Jelinek <jakub@redhat.com>
1890
1891 * wcsmbs/mbrtowc.c (__mbrtowc): Cap s + n at the end of address space.
1892 * stdlib/Makefile (tests): Add testmb2.
1893 (testmb2-ENV): New.
1894 * stdlib/testmb2.c: New test.
1895
18962004-02-23 Jakub Jelinek <jakub@redhat.com>
1897
1898 * sysdeps/posix/getaddrinfo.c (gaih_inet): If _res has not been
1899 inited yet, try to init it before saving old _res.options.
1900 * posix/Makefile (xtests): Add bug-ga2.
1901 (generated): Add bug-ga2.mtrace and bug-ga2-mem.
1902 (xtests): Depend on bug-ga2-mem.
1903 ($(objpfx)bug-ga2-mem, bug-ga2-ENV): New.
1904 * posix/bug-ga2.c: New test.
1905
19062004-02-22 Ulrich Drepper <drepper@redhat.com>
1907
1908 * sysdeps/unix/sysv/linux/i386/posix_fadvise64.S: Pop register
1909 content also in case of an overflow in the parameter.
1910 Reported by Momchil Velikov <velco@fadata.bg>.
1911
19122004-02-21 Ulrich Drepper <drepper@redhat.com>
1913
1914 * elf/dynamic-link.h (elf_get_dynamic_info): Recognize DF_1_NOW.
1915 In ld.so, neither DT_FLAGS nor DT_FLAGS_1 must be used.
1916
19172004-02-21 Andreas Jaeger <aj@suse.de>
1918
1919 * posix/bug-ga1.c: Include <string.h> for memset prototype.
1920
1921 * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
1922
1923 * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
1924 lvalue.
1925
19262004-02-19 Carlos O'Donell <carlos@baldric.uwo.ca>
1927
1928 * sysdeps/generic/framestate.c [__USING_SJLJ_EXCEPTIONS__]
1929 (__frame_state_for): Set frame_State_for to abort if the compiler
1930 is using sjlj.
1931 * sysdeps/generic/unwind-dw2.c: Allow sjlj enabled compilers to
1932 build the code by removing __USING_SJLJ_EXCEPTIONS__ wrapper.
1933
19342004-02-20 Alexandre Oliva <aoliva@redhat.com>
1935
1936 * resolv/Versions: Remove semicolon from the end of libresolv's
1937 GLIBC_2.3.2 version block.
1938 * Versions.def (libresolv): Add GLIBC_2.3.2.
1939
19402004-02-19 Carlos O'Donell <carlos@baldric.uwo.ca>
1941
1942 * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
1943 status register loads.
1944
19452004-02-20 Thorsten Kukuk <kukuk@suse.de>
1946
1947 * nscd/nscd.c (termination_handler): Use _exit instead of exit
1948
19492004-02-20 Ulrich Drepper <drepper@redhat.com>
1950
1951 * nscd/nscd.c (main): Report fork errors.
1952
1953 * dlfcn/dlsym.c: Get ld.so loading lock before the call into ld.so.
1954 * dlfcn/dlvsym.c: Likewise.
1955 * elf/dl-addr.c: Get loading lock while using _dl_loaded data.
1956 * elf/dl-fini.c: Likewise.
1957 Patch by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
1958
19592004-02-20 Jakub Jelinek <jakub@redhat.com>
1960
1961 * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
1962 2003-11-27 atan2 test.
1963
1964 * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
1965 with #ifndef __powerpc64__.
1966
1967 * sysdeps/generic/ldsodefs.h (_dl_argv, _dl_argv_internal): If
1968 DL_ARGV_NOT_RELRO defined, don't use attribute_relro.
1969 * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1970 * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1971 * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1972 * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Remove.
1973 * sysdeps/alpha/dl-sysdep.h: New file.
1974 * sysdeps/ia64/dl-sysdep.h: New file.
1975 * sysdeps/sparc/dl-sysdep.h: New file.
1976
19772004-02-19 Jakub Jelinek <jakub@redhat.com>
1978
1979 * sysdeps/sparc/sparc32/bits/atomic.h: Add __make_section_unallocated
1980 for .gnu.linkonce.b.__sparc32_atomic_locks section.
1981 (__sparc32_atomic_locks): Add __sec_comment at the end of section name.
1982
19832004-02-19 Steven Munroe <sjmunroe@us.ibm.com>
1984
1985 * sysdeps/generic/libc-start.c [LIBC_START_DISABLE_INLINE] (STATIC):
1986 Define as static.
1987 * sysdeps/powerpc/elf/libc-start.c: Define LIBC_START_DISABLE_INLINE
1988 because gcc does not allow inline of functions that call setjmp.
1989
19902004-02-19 Steven Munroe <sjmunroe@us.ibm.com>
1991
1992 * sysdeps/powerpc/powerpc64/Makefile: Use -finline-limit.
1993
19942004-02-19 Jakub Jelinek <jakub@redhat.com>
1995
1996 * elf/rtld.c (_dl_argv): If DL_ARGV_NOT_RELRO defined, don't
1997 use attribute_relro for _dl_argv.
1998 * sysdeps/alpha/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
1999 * sysdeps/ia64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
2000 * sysdeps/sparc/sparc32/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
2001 * sysdeps/sparc/sparc64/dl-machine.h (DL_ARGV_NOT_RELRO): Define.
2002
20032004-02-19 Ulrich Drepper <drepper@redhat.com>
2004
2005 * libio/iopopen.c (_IO_new_proc_open): It's not kosher to use
2006 vfork instead of fork.
2007 * libio/oldiopopen.c (_IO_old_proc_open): Likewise.
2008
2009 * sysdeps/unix/clock_settime.c (clock_settime): Fix typo which
2010 prevented system-dependent handling from being used.
2011
20122004-02-18 Carlos O'Donell <carlos@baldric.uwo.ca>
2013
2014 * test-skeleton.c (main): If set, use environment variable
2015 TIMEOUTFACTOR to scale test TIMEOUT.
2016
20172004-02-18 Ulrich Drepper <drepper@redhat.com>
2018
2019 * nscd/nscd_conf.c: Include <stdio_ext.h>.
2020
20212004-02-16 Ulrich Drepper <drepper@redhat.com>
2022
2023 * stdlib/test-canon.c (do_test): Test realpath(,NULL) in the loop
2024 as well.
2025
2026 * stdlib/canonicalize.c (__realpath): Remove unnecessary copy
2027 operations.
2028
2029 * nscd/nscd_conf.c (nscd_parse_file): Little optimization.
2030
20312004-02-14 Thorsten Kukuk <kukuk@suse.de>
2032
2033 * nscd/dbg_log.c (set_logfile): Only save name of logfile,
2034 don't open it.
2035 (init_logfile): New function, open logfile if requested.
2036 * nscd/dbg_log.h: Adjust protoype for set_logfile, add init_logfile.
2037 * nscd/nscd.c (main): Call init_logfile after forking in background.
2038 * nscd/nscd_conf.c (nscd_parse_file): Adjust for new set_logfile.
2039
20402004-02-16 Ulrich Drepper <drepper@redhat.com>
2041
2042 * elf/rtld.c (dl_main): Don't fail execution if file named in
2043 ld.so.preload is not present [BZ #18].
2044
2045 * sysdeps/posix/getaddrinfo.c (getaddrinfo): Undo unintended
2046 changes in last patch.
2047
2048 * posix/regexec.c (transit_state): Fix typo in commented-out code
2049 [BZ #6].
2050
2051 * sysdeps/posix/getaddrinfo.c (match_prefix): Correctly match
2052 partial bytes [BZ #24].
2053 * posix/Makefile (tests): Add bug-ga1.
2054 * posix/bug-ga1.c: New file.
2055
20562004-02-13 Steven Munroe <sjmunroe@us.ibm.com>
2057
2058 * sysdeps/powerpc/powerpc64/__longjmp-common.S: New file.
2059 * sysdeps/powerpc/powerpc64/__longjmp.S [NOT_IN_libc](__longjmp):
2060 Non-versioned __longjmp for rtld-__longjmp.
2061 [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
2062 default version of __longjmp.
2063 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2064 (__novmx__longjmp): Original version of __longjmp.
2065 * sysdeps/powerpc/powerpc64/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
2066 Non-versioned _setjmp for rtld-_setjmp.
2067 [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
2068 as default version of _setjmp.
2069 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2070 (__novmx_setjmp): Original version of _setjmp.
2071 * sysdeps/powerpc/powerpc64/bsd-setjmp.S (__vmxsetjmp): Branch to
2072 __vmx__sigsetjmp and define as default version of setjmp.
2073 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2074 (__novmxsetjmp): Original version of setjmp.
2075 * sysdeps/powerpc/powerpc64/setjmp-common.S: New file.
2076 * sysdeps/powerpc/powerpc64/setjmp.S [NOT_IN_libc](__setjmp):
2077 Non-versioned __sigsetjmp for rtld-setjmp.
2078 [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
2079 as default version of __sigsetjmp.
2080 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)]
2081 (__novmx__sigsetjmp): Original version of __sigsetjmp.
2082
2083 * sysdeps/powerpc/powerpc32/__longjmp-common.S: New File
2084 * sysdeps/powerpc/powerpc32/__longjmp.S [NOT_IN_libc](__longjmp):
2085 Non-versioned __longjmp for rtld-__longjmp.
2086 [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
2087 default version of __longjmp.
2088 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2089 (__novmx__longjmp): Original version of __longjmp.
2090 * sysdeps/powerpc/powerpc32/bsd-_setjmp.S [NOT_IN_libc](_setjmp):
2091 Non-versioned _setjmp for rtld-_setjmp.
2092 [!NOT_IN_libc](__vmx_setjmp): Branch to __vmx__sigsetjmp and define
2093 as default version of _setjmp.
2094 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2095 (__novmx_setjmp): Original version of _setjmp.
2096 * sysdeps/powerpc/powerpc32/bsd-setjmp.S (__vmxsetjmp): Branch to
2097 __vmx__sigsetjmp and define as default version of setjmp.
2098 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2099 (__novmxsetjmp): Original version of setjmp.
2100 * sysdeps/powerpc/powerpc32/fpu/__longjmp-common.S: New file.
2101 * sysdeps/powerpc/powerpc32/fpu/__longjmp.S [NOT_IN_libc](__longjmp):
2102 Non-versioned __longjmp for rtld-__longjmp.
2103 [!NOT_IN_libc](__vmx__longjmp): Add VMX reg support and define as
2104 default version of __longjmp.
2105 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2106 (__novmx__longjmp): Original version of __longjmp.
2107 * sysdeps/powerpc/powerpc32/fpu/setjmp-common.S: New file.
2108 * sysdeps/powerpc/powerpc32/fpu/setjmp.S [NOT_IN_libc](__setjmp):
2109 Non-versioned __sigsetjmp for rtld-setjmp.
2110 [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
2111 as default version of __sigsetjmp.
2112 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2113 (__novmx__sigsetjmp): Original version of __sigsetjmp.
2114 * sysdeps/powerpc/powerpc32/setjmp-common.S: New file.
2115 * sysdeps/powerpc/powerpc32/setjmp.S [NOT_IN_libc](__setjmp):
2116 Non-versioned __sigsetjmp for rtld-setjmp.
2117 [!NOT_IN_libc](__vmx__sigsetjmp): Add VMX reg support and define
2118 as default version of __sigsetjmp.
2119 [SHARED && SHLIB_COMPAT (libc, GLIBC_2_0, GLIBC_2_3_4)]
2120 (__novmx__sigsetjmp): Original version of __sigsetjmp.
2121
2122 * sysdeps/powerpc/Dist: New File.
2123 * sysdeps/powerpc/Makefile (sysdep_routines): Add novmx-longjmp.c
2124 and novmx-sigjmp.c
2125 * sysdeps/powerpc/Versions (libc): To GLIBC_2.3_4 add _longjmp,
2126 __sigsetjmp, _setjmp, longjmp, and setjmp. To GLIBC_PRIVATE add
2127 __novmx__libc_longjmp, __novmx__libc_siglongjmp, __vmx__libc_longjmp,
2128 and __vmx__libc_siglongjmp.
2129 * sysdeps/powerpc/bits/setjmp.h: Define JB_VRSAVE, JB_VRS, and adjust
2130 JB_SIZE to add VMX regs to __jmp_buf.
2131 * sysdeps/powerpc/longjmp.c: New file.
2132 * sysdeps/powerpc/novmxsetjmp.h: New file.
2133 * sysdeps/powerpc/novmx-longjmp.c: New file.
2134 * sysdeps/powerpc/novmx-sigjmp.c: New file.
2135 * sysdeps/powerpc/sigjmp.c: New file.
2136
21372004-02-13 Jakub Jelinek <jakub@redhat.com>
2138
2139 * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c (__lrintf, lrintf):
2140 Define.
2141 (__lrintl, lrintl): Remove.
2142 * sysdeps/powerpc/powerpc64/fpu/s_llrint.c (__lrint): Fix a typo in
2143 strong_alias spelling.
2144 * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: Remove.
2145 * sysdeps/powerpc/powerpc64/fpu/s_lrint.S: New file.
2146
21472004-02-12 Ulrich Drepper <drepper@redhat.com>
2148
2149 * posix/getopt.h: Add some non-gcc support. Patch by Aharon Robbins.
2150
21512004-02-12 Mark Brown <bmark@us.ibm.com>
2152
2153 * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
2154
21552004-02-12 Jakub Jelinek <jakub@redhat.com>
2156
2157 * sysdeps/powerpc/fpu/s_lrint.c: Move to...
2158 * sysdeps/powerpc/powerpc32/fpu/s_lrint.c: ... here.
2159 * sysdeps/powerpc/fpu/s_llrint.c: Move to...
2160 * sysdeps/powerpc/powerpc32/fpu/s_llrint.c: ... here.
2161 * sysdeps/powerpc/fpu/s_llrintf.c: Move to...
2162 * sysdeps/powerpc/powerpc32/fpu/s_llrintf.c: ... here.
2163 * sysdeps/powerpc/powerpc64/fpu/s_llrint.c: New file.
2164 * sysdeps/powerpc/powerpc64/fpu/s_lrintf.S: New file.
2165 * sysdeps/powerpc/powerpc64/fpu/s_llrintf.c: New file.
2166
2167 * math/libm-test.inc (lrint_test): Add new test.
2168 (llrint_test, lround_test, llround_test): Likewise.
2169 * sysdeps/ieee754/ldbl-128/s_lroundl.c (__lroundl): Fix special case
2170 with result taking up 48 bits.
2171 * sysdeps/ieee754/ldbl-128/s_lrintl.c (__lrintl): Likewise.
2172 * sysdeps/ieee754/ldbl-128/s_llroundl.c (__llroundl): Likewise.
2173 * sysdeps/ieee754/ldbl-96/s_llrintl.c (__llrintl): Fix special case
2174 with result taking up 31 bits.
2175
21762004-02-12 Ulrich Drepper <drepper@redhat.com>
2177
2178 * locale/programs/locale.c (show_locale_vars): Don't print a value
2179 for LANG if it is not set.
2180
21812004-02-11 Jakub Jelinek <jakub@redhat.com>
2182
2183 * posix/regexec.c (check_node_accept_bytes): Return 0 if char_len is 0.
2184 (find_collation_sequence_value): Don't look beyond end of
2185 SYMB_EXTRAMB table.
2186 * posix/Makefile (tests): Add bug-regex23.
2187 (bug-regex23-ENV): New.
2188 * posix/bug-regex23.c: New file.
2189
21902004-02-10 Roland McGrath <roland@frob.com>
2191
2192 * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
2193 * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
2194
2195 * sysdeps/mach/hurd/configure.in: Move `retcode' check to ...
2196 * sysdeps/mach/configure.in: ... here.
2197 * sysdeps/mach/hurd/configure: Regenerated.
2198 * sysdeps/mach/configure.in: Regenerated.
2199
22002004-02-10 Ulrich Drepper <drepper@redhat.com>
2201
2202 * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
2203 temporary copies of the variables accumulate on the stack.
2204
2205 * stdio-common/_i18n_number.h: Finish last patch.
2206
22072004-02-09 Ulrich Drepper <drepper@redhat.com>
2208
2209 * sysdeps/i386/i686/memcmp.S: New file. Patch by HJ Lu.
2210
22112003-12-05 Roland McGrath <roland@redhat.com>
2212
2213 * sysdeps/unix/sysv/linux/i386/syscalls.list: Turn vm86 into vm86old
2214 for vm86@GLIBC_2.0 version. Add new vm86@GLIBC_2.3.4.
2215 * sysdeps/unix/sysv/linux/i386/Versions (libc: GLIBC_2.3.4): Add vm86.
2216 * sysdeps/unix/sysv/linux/i386/sys/vm86.h: Update vm86 prototype.
2217
22182004-02-09 Ulrich Drepper <drepper@redhat.com>
2219
2220 * nis/ypclnt.c: Cleanup last patch.
2221
22222004-02-09 Andreas Jaeger <aj@suse.de>
2223
2224 * configure.in: Remove glibcbug creation.
2225 * configure: Regenerated.
2226
2227 * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
2228
22292004-02-03 Thorsten Kukuk <kukuk@suse.de>
2230
2231 * nis/ypclnt.c (__yp_bind_client_create): New, small chunk
2232 of duplicated code from __yp_bind.
2233 (__yp_bind_file): New, binding dir code from __yp_bind.
2234 (__yp_bind_client_create): New, ypbind code from __yp_bind.
2235 (__ypclnt_call): New, make NIS query.
2236 (do_ypcall): At first use cached data, then try data from
2237 binding directory, after this ask ypbind for a working ypserv.
2238 Based on a patch from Jeff Bastian <jmbastia@ti.com> and
2239 Chris Barrera <cbarrera@ti.com>
2240
22412004-01-19 Roland McGrath <roland@redhat.com>
2242
2243 * configure.in: Don't set CCVERSION.
2244 * configure: Regenerated.
2245 * glibcbug.in: File removed.
2246 * Makefile (install-bin-script): Remove glibcbug.
2247 (glibcbug): Target removed.
2248 (distclean-1): Don't rm glibcbug.
2249 (distribute): Remove glibcbug.in.
2250
22512004-02-09 Roland McGrath <roland@redhat.com>
2252
2253 * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
2254 24, not 23.
2255
22562004-01-29 Roland McGrath <roland@redhat.com>
2257
2258 * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
2259 Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
2260
22612004-02-09 Ulrich Drepper <drepper@redhat.com>
2262
2263 * libio/genops.c (_IO_cleanup): Do not use locking when flushing
2264 the buffers. Some thread might be using a stream.
2265
22662004-02-09 Andreas Jaeger <aj@suse.de>
2267
2268 * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
2269 Patch by Jan Beulich <jbeulich@novell.com>.
2270
22712004-02-09 Andreas Schwab <schwab@suse.de>
2272
2273 * include/rpc/rpc.h: Declare thread variables with their correct type.
2274 * sunrpc/clnt_perr.c: Don't cast thread variables.
2275 * sunrpc/clnt_raw.c: Likewise.
2276 * sunrpc/clnt_simp.c: Likewise.
2277 * sunrpc/key_call.c: Likewise.
2278 * sunrpc/svcauth_des.c: Likewise.
2279 * sunrpc/svc.c: Likewise.
2280 * sunrpc/svc_raw.c: Likewise.
2281 * sunrpc/svc_simple.c: Likewise.
2282
22832004-02-09 Ulrich Drepper <drepper@redhat.com>
2284
2285 * stdio-common/_i18n_number.h: Support printing localized decimal
2286 point and thousand separator.
2287 * wctype/wctrans.c: Add __wctrans alias.
2288 * include/wctype.h: Declare __wctrans.
2289 Based on a patch by Hamed Malek.
2290
2291 * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
2292 other than the status bits [BZ #10].
2293
22942004-02-08 Ulrich Drepper <drepper@redhat.com>
2295
2296 Make stream locking operations really work.
2297 * misc/Makefile (CFLAGS-mntent_r.c): Define.
2298 * shadow/Makefile (CFLAGS-fgetspent_r.c): Define.
2299 (CFLAGS-putspent.c): Define.
2300 * grp/Makefile (CFLAGS-fgetgrent_r.c): Define.
2301 (CFLAGS-putgrent.c): Define.
2302 * pwd/Makefile (CFLAGS-fgetpwent_r.c): Define.
2303 Reported by Shunichi Sagawa <s-sagawa@jp.fujitsu.com>.
2304
2305 * elf/dl-load.c (lose): Use noinline attribute instead of silly
2306 alloca to prevent inlining.
2307 * elf/dl-runtime.c (fixup): Likewise.
2308 (profile_fixup): Likewise.
2309
2310 * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
2311 Initialize width correctly.
2312
23132004-02-07 Andreas Jaeger <aj@suse.de>
2314
2315 * iconv/gconv_simple.c (ucs4le_internal_loop): Remove cast used as
2316 lvalue.
2317 (internal_ucs4le_loop_single): Likewise.
2318 (ucs4_internal_loop): Likewise.
2319 (BODY): Likewise.
2320 (internal_ucs4_loop_single): Likewise.
2321 * iconvdata/iso8859-1.c (BODY): Likewise.
2322 * iconvdata/cp1255.c (EMIT_SHIFT_TO_INIT): Likewise.
2323 * iconvdata/cp1258.c (EMIT_SHIFT_TO_INIT): Likewise.
2324 * iconvdata/gb18030.c (BODY): Likewise.
2325 * iconvdata/armscii-8.c (BODY): Likewise.
2326 * stdlib/msort.c (msort_with_tmp): Likewise.
2327
2328 * iconv/gconv_open.c (__gconv_open): Remove conditional expression
2329 as lvalue.
2330
23312004-02-06 Steven Munroe <sjmunroe@us.ibm.com>
2332
2333 * sysdeps/powerpc/powerpc32/dl-machine.c: Declare __cache_line_size as
2334 weak extern.
2335 (__elf_machine_runtime_setup): Invalidate the instruction cache over
2336 the whole range of the PLT.
2337
23382004-02-06 Andreas Schwab <schwab@suse.de>
2339
2340 * posix/regcomp.c (build_range_exp): Fix off-by-one.
2341 (parse_bracket_exp): Likewise.
2342
23432004-02-05 Ulrich Drepper <drepper@redhat.com>
2344
2345 * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
2346 _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC. Patch by Anton Blanchard.
2347
23482004-02-02 Paolo Bonzini <bonzini@gnu.org>
2349
2350 * posix/regexec.c (check_matching): Add P_MATCH_FIRST parameter.
2351 (re_search_internal): Pass new parameter to check_matching.
2352 (check_matching): Unless a parenthesized group is found at the
2353 beginning of the regexp, advance P_MATCH_FIRST until we entered
2354 a state different from the initial state.
2355
23562004-02-01 Ulrich Drepper <drepper@redhat.com>
2357
2358 * math/libm-test.inc (lround_test): Add new test.
2359 (llround_test): Likewise.
2360 (lrint_test): Likewise.
2361 (llrint_test): Likewise.
2362 * sysdeps/ieee754/dbl-64/s_lround.c (__lround): Fix special case
2363 with result taking up 20 bits.
2364 * sysdeps/ieee754/dbl-64/s_lrint.c (__lrint): Likewise.
2365 * sysdeps/ieee754/dbl-64/s_llrint.c (__llrint): Likewise..
2366 * sysdeps/ieee754/ldbl-96/s_lroundl.c (__lroundl): Fix special
2367 case with result taking up 31 bits.
2368 * sysdeps/ieee754/ldbl-96/s_lrintl.c (__lrintl): Likewise.
2369
2370 * po/nl.po: Update from translation team.
2371
23722004-01-30 Andreas Schwab <schwab@suse.de>
2373
2374 * sysdeps/unix/sysv/linux/ia64/bits/siginfo.h (ILL_BREAK,
2375 FPE_DECOVF, FPE_DECDIV, FPE_DECERR, FPE_INVASC, FPE_INVDEC,
2376 SEGV_PSTKOVF): Remove underscore prefix from definition.
2377
23782004-01-28 Paolo Bonzini <bonzini@gnu.org>
2379
2380 Merge regex changes in gawk.
2381 * posix/regcomp.c (build_range_exp) [!_LIBC]: Check validity
2382 of collation elements.
2383 * posix/regex.c: Include limits.h.
2384 * posix/regex.h: Document REG_ECOLLATE correctly.
2385 * posix/regex_internal.h [!_LIBC && !ENABLE_NLS]: Disable NLS.
2386
23872004-01-24 Andreas Jaeger <aj@suse.de>
2388
2389 * malloc/obstack.h: Import gnulib version.
2390 * malloc/obstack.c: Likewise.
2391
23922004-01-26 David Mosberger <davidm@hpl.hp.com>
2393
2394 * elf/link.h (struct dl_phdr_info): Fix typo in comment.
2395 * elf/rtld.c (dl_main): After incrementing dl_nloaded, also
2396 increment dl_load_adds.
2397 * elf/dl-iteratephdr.c (__dl_iterate_phdr): Replace GL(dl_load_subs)
2398 with equivalent GL(dl_load_adds - GL(dl_nloaded).
2399 (dl_iterate_phdr): Likewise.
2400 * elf/dl-close.c (_dl_close): Delete increment of GL(dl_load_subs).
2401 * elf/dl-support.c: Remove global variable _dl_load_subs.
2402 * sysdeps/generic/ldsodefs.h (struct rtld_global): Remove
2403 _dl_load_subs member.
2404
24052004-01-27 Jakub Jelinek <jakub@redhat.com>
2406
2407 * elf/rtld.c (_dl_start_final): Don't set l_relro_* here.
2408 (_dl_start): And neither here.
2409 (dl_main): Set GL(dl_loaded)->l_relro_* and
2410 GL(dl_rtld_map)->l_relro_*.
2411
24122004-01-23 David Mosberger <davidm@hpl.hp.com>
2413
2414 * sysdeps/generic/ldsodefs.h (struct rtld_global): Add members
2415 _dl_load_adds and _dl_load_subs.
2416 * elf/dl-support.c (_dl_load_adds): New variable.
2417 (_dl_load_subs): Likewise.
2418 * elf/dl-object.c (_dl_new_object): Increment dl_load_adds.
2419 * elf/dl-close.c (_dl_close): Increment dl_load_subs.
2420 * elf/link.h (struct dl_phdr_info): Add members dlpi_adds and
2421 dlpi_subs.
2422 * include/link.h: Likewise.
2423 * elf/dl-iteratephdr.c (__dl_iterate_phdr): Initialize dlpi_adds
2424 and dlpi_subs members.
2425 (dl_iterate_phdr): Likewise.
2426 * elf/tst-dlmodcount.c: New file.
2427 * elf/Makefile (distribute): Mention tst-dlmodcount.c.
2428 (tests): If build-shared, mention tst-dlmodcount.
2429 ($(objpfx)tst-dlmodcount): If build-shared, build and
2430 run tst-dlmodcount.
2431
24322004-01-22 Jakub Jelinek <jakub@redhat.com>
2433
2434 * elf/dl-reloc.c (_dl_relocate_object): Move PT_GNU_RELRO protection
2435 into...
2436 (_dl_protect_relro): New routine.
2437 * sysdeps/generic/ldsodefs.h (_dl_protect_relro): New prototype.
2438 * elf/rtld.c (_dl_start_final): Copy l_relro_addr and l_relro_size
2439 from bootstrap_map.
2440 (_dl_main): Don't set GL(_dl_loaded)->l_relro_{addr,size} here.
2441 Call _dl_protect_relro for libraries if prelinking.
2442
24432004-01-23 Richard Henderson <rth@redhat.com>
2444
2445 * Versions.def (libm): Replace GLIBC_2.3.3 with GLIBC_2.3.4.
2446 * sysdeps/alpha/fpu/Versions (libm): Likewise.
2447 * sysdeps/alpha/fpu/cfloat-compat.h (cfloat_versions): Likewise.
2448 * sysdeps/alpha/fpu/s_clog10f.c (clog10f): Likewise.
2449
24502004-01-22 Andreas Jaeger <aj@suse.de>
2451
2452 * sysdeps/ieee754/dbl-64/e_pow.c (log2): Rename to my_log2 to
2453 avoid warnings for builtin function log2.
2454
2455 * sysdeps/unix/sysv/linux/x86_64/setcontext.S: Add proper unwind
2456 information.
2457
24582004-01-20 Ulrich Drepper <drepper@redhat.com>
2459
2460 * sysdeps/unix/sysv/linux/sys/epoll.h: Add EPOLLONESHOT.
2461 * sysdeps/unix/sysv/linux/x86_64/sys/epoll.h: Likewise.
2462 Patch by Davide Libenzi.
2463
2464 * sysdeps/unix/sysv/linux/kernel-features.h: Define
2465 __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
2466
2467 * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
2468
2469 * sysdeps/unix/sysv/linux/readahead.c (__readahead): Use off64_t
2470 instead of loff_t. Include <fcntl.h>.
2471 * sysdeps/unix/sysv/linux/alpha/bits/fcntl.h: Add readahead prototype.
2472 * sysdeps/unix/sysv/linux/arm/bits/fcntl.h: Likewise.
2473 * sysdeps/unix/sysv/linux/cris/bits/fcntl.h: Likewise.
2474 * sysdeps/unix/sysv/linux/hppa/bits/fcntl.h: Likewise.
2475 * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
2476 * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise.
2477 * sysdeps/unix/sysv/linux/m68k/bits/fcntl.h: Likewise.
2478 * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Likewise.
2479 * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
2480 * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
2481 * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
2482 * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
2483
2484 * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
2485
2486 * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
2487
24882003-12-31 Bruno Haible <bruno@clisp.org>
2489
2490 * iconvdata/iso_6937-2.c (to_ucs4): Map 0x7E to U+007E, not U+203E.
2491 Map 0xA6 to U+0023. Map 0xA8 to U+00A4.
2492 (to_ucs4_comb): Map 0xC5 0x20 to U+00AF.
2493 (from_ucs4): Map U+00ED to 0xC2 0x69, not 0xC2 0xE9.
2494 (BODY for TO_LOOP): Don't map U+02DC. Map U+02DD to 0xCD 0x20, not
2495 0x00 0x20. Don't map U+2500..U+25E3.
2496
24972004-01-19 Jakub Jelinek <jakub@redhat.com>
2498
2499 * posix/regexec.c (get_subexp): Remove bkref_str variable.
2500 Extend buffers if needed before comparisons.
2501 (get_subexp_sub): Handle clean_state_log_if_needed failure.
2502
25032004-01-17 Ulrich Drepper <drepper@redhat.com>
2504
2505 * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
2506 atomic_decrement. Patch by Davin McCall.
2507
25082004-01-13 Daniel Jacobowitz <drow@mvista.com>
2509
2510 * sysdeps/powerpc/nofpu/sim-full.c (__sim_exceptions)
2511 (__sim_disabled_exceptions, __sim_round_mode): Declare with
2512 hidden data and nocommon.
2513 * sysdeps/powerpc/nofpu/soft-supp.h (__sim_exceptions)
2514 (__sim_disabled_exceptions, __sim_round_mode): Use
2515 libc_hidden_proto.
2516 * sysdeps/powerpc/soft-fp/sfp-machine.h (__sim_exceptions)
2517 (__sim_disabled_exceptions, __sim_round_mode): Likewise.
2518
25192004-01-16 Ulrich Drepper <drepper@redhat.com>
2520
2521 * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
2522 PT_IA_64_HP_STACK.
2523
25242004-01-16 Richard Henderson <rth@redhat.com>
2525
2526 * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
2527 (__libc_enable_secure_internal): Likewise.
2528
2529 * elf/dl-load.c: Don't declare __libc_stack_end.
2530 * sysdeps/generic/libc-start.c: Likewise.
2531 * sysdeps/unix/sysv/linux/dl-execstack.c: Likewise.
2532 * sysdeps/generic/segfault.c: Likewise. Include ldsodefs.h.
2533 * sysdeps/generic/backtrace.c: Likewise.
2534
25352004-01-15 Ulrich Drepper <drepper@redhat.com>
2536
2537 * Versions.def: Add GLIBC_2.3.4.
2538
25392004-01-15 Richard Henderson <rth@redhat.com>
2540
2541 * sysdeps/unix/alpha/sysdep.h: Revert last change.
2542
25432004-01-15 Richard Henderson <rth@redhat.com>
2544
2545 * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
2546
2547 * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
2548 !samegp relocation.
2549
25502004-01-15 Richard Henderson <rth@redhat.com>
2551
2552 * sysdeps/unix/sysv/linux/alpha/Makefile [stdlib]: Process
2553 ucontext-offsets.sym.
2554 * sysdeps/unix/sysv/linux/alpha/getcontext.S: New file.
2555 * sysdeps/unix/sysv/linux/alpha/makecontext.S: New file.
2556 * sysdeps/unix/sysv/linux/alpha/setcontext.S: New file.
2557 * sysdeps/unix/sysv/linux/alpha/swapcontext.S: New file.
2558 * sysdeps/unix/sysv/linux/alpha/ucontext-offsets.sym: New file.
2559
25602004-01-15 Richard Henderson <rth@redhat.com>
2561
2562 * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
2563 __syscall_, move nop inside, adjust users by +4.
2564
25652004-01-14 Steven Munroe <sjmunroe@us.ibm.com>
2566
2567 * include/libc-symbols.h [HAVE_ASM_GLOBAL_DOT_NAME]
2568 (_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed symbols.
2569 (_default_symbol_version): Use C_SYMBOL_DOT_NAME to create '.'ed
2570 symbols.
2571 * sysdeps/powerpc/Makefile: Add rtld-global-offsets.sym to
2572 gen-as-const-headers.
2573 * sysdeps/powerpc/elf/rtld-global-offsets.sym: New file.
2574 * sysdeps/powerpc/sysdep.h: Define v# symbols for vector registers.
2575 Define PPC_FEATURE_* masks for Aux Vector AT_HWCAP.
2576 * sysdeps/unix/sysv/linux/kernel-features.h
2577 (__ASSUME_SWAPCONTEXT_SYSCALL): Define for PPC and 2.6.0 kernels.
2578 * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h [!__WORDSIZE == 32]:
2579 Declare mcontext_t inline and include altivec state for 64-bit.
2580 * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
2581 versions for setcontext, getcontext, and swapcontext.
2582
2583 * sysdeps/unix/sysv/linux/powerpc/powerpc64/Versions: Add GLIBC_2.3.4
2584 versions for setcontext, getcontext, swapcontext, and makecontext.
2585 * sysdeps/unix/sysv/linux/powerpc/powerpc64/getcontext.S
2586 (__getcontext): Upgrade to save Altivec regs and version GLIBC_2_3_4.
2587 [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_getcontext):
2588 Compatible with GLIBC_2.3.3 release.
2589 * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
2590 (__makecontext): Use parm save area instead of compiler_dw to hold
2591 context pointer.
2592 * sysdeps/unix/sysv/linux/powerpc/powerpc64/setcontext.S
2593 (__setcontext): Upgrade to restore Altivec regs and version
2594 GLIBC_2_3_4.
2595 [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_setcontext):
2596 Compatible with GLIBC_2.3.3 release.
2597 * sysdeps/unix/sysv/linux/powerpc/powerpc64/swapcontext.S
2598 (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
2599 [SHLIB_COMPAT (libc, GLIBC_2_3, GLIBC_2_3_4)] (__novec_swapcontext):
2600 Compatible with GLIBC_2.3.3 release.
2601 * sysdeps/unix/sysv/linux/powerpc/powerpc64/ucontext_i.h
2602 (SIGCONTEXT_V_REGS_PTR, SIGCONTEXT_V_RESERVE): Defined.
2603
26042004-01-12 Steven Munroe <sjmunroe@us.ibm.com>
2605
2606 * sysdeps/unix/sysv/linux/powerpc/powerpc32/Versions: Add GLIBC_2.3.4
2607 versions for setcontext, getcontext, swapcontext, and makecontext.
2608 * sysdeps/unix/sysv/linux/powerpc/powerpc32/getcontext.S
2609 (__getcontext): Upgrade to save Altivec regs and version GLIBC_2_3_4.
2610 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_getcontext):
2611 Compatible with GLIBC_2.3.3 release.
2612 * sysdeps/unix/sysv/linux/powerpc/powerpc32/makecontext.S
2613 (__makecontext): Upgrade to align for Altivec regs and version
2614 GLIBC_2_3_4.
2615 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_makecontext):
2616 Compatible with GLIBC_2.3.3 release.
2617 * sysdeps/unix/sysv/linux/powerpc/powerpc32/setcontext.S
2618 (__setcontext): Upgrade to restore Altivec regs and version
2619 GLIBC_2_3_4.
2620 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)] (__novec_setcontext):
2621 Compatible with GLIBC_2.3.3 release.
2622 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
2623 (__swapcontext): Upgrade to swap Altivec regs and version GLIBC_2_3_4.
2624 [SHLIB_COMPAT (libc, GLIBC_2_3_3, GLIBC_2_3_4)]
2625 (__novec_swapcontext): Compatible with GLIBC_2.3.3 release.
2626 * sysdeps/unix/sysv/linux/powerpc/powerpc32/ucontext_i.h:
2627 (_UC_VSCR, _UC_VRSAVE): Define.
2628 (_FRAME_BACKCHAIN, _FRAME_LR_SAVE,_FRAME_PARM_SAVE1,_FRAME_PARM_SAVE2,
2629 _FRAME_PARM_SAVE3, _FRAME_PARM_SAVE4): Defined.
2630
26312004-01-15 Ulrich Drepper <drepper@redhat.com>
2632
2633 * elf/rtld.c: Handle platforms with HP_TIMING_NONAVAIL defined.
2634
26352004-01-16 Alfred M. Szmidt <ams@kemisten.nu>
2636
2637 * sysdeps/generic/dl-execstack.c (_dl_make_stack_executable): Adjust
2638 parameter type.
2639
26402004-01-15 Ulrich Drepper <drepper@redhat.com>
2641
2642 * elf/elf.h: Fix typo in comment.
2643
2644 * sysdeps/generic/dl-sysdep.c: Initialize __libc_stack_end.
2645 * elf/rtld.c: Initialize _dl_argv to allow aliasing.
2646
2647 * resolv/resolv.h: Add RES_USEBSTRING.
2648 * resolv/res_debug.c (p_option): Add handling for RES_USE_INET6,
2649 RES_ROTATE, RES_NOCHECKNAME, and RES_USEBSTRING.
2650 * resolv/res_init.c (res_setioptions): Recognize ip6-bytestring.
2651 * resolv/nss_dns/dns-host.c (_nss_dns_gethostbyaddr_r): Only perform
2652 bytestring IPv6 lookup with RES_USEBSTRING option is selected.
2653 Otherwise use the two nibble formats.
2654
26552004-01-14 Ulrich Drepper <drepper@redhat.com>
2656
2657 * configure.in: Define HAVE_Z_RELRO if the linker supports -z relro.
2658 * config.h.in: Add entry for HAVE_Z_RELRO.
2659 * include/libc-symbols.h: Define attribute_relro.
2660 * elf/dl-load.c: Add attribute_relro to env_path_list, capstr, ncapstr,
2661 max_capstrlen, and max_dirnamelen definitions.
2662 * elf/rtld.c: Add attribute_relro to _dl_argc, _dl_argv, _dl_skip_args,
2663 load_time, start_time, library_path, preloadlist, version_info,
2664 any_debug.
2665 Remove rtld_total_time. Make it a local variable. Pass pointer to
2666 it to print_statistics. Change print_statistics accordingly.
2667 * sysdeps/generic/dl-sysdep.c: Add attribute_relro to _dl_auxv. Use
2668 attribute_relro instead of explicitly assigning variable to the
2669 .data.rel.ro section for __libc_enable_secure and __libc_stack_end.
2670 * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end, _dl_argc,
2671 _dl_argv, _dl_argv_internal with attribute_relro.
2672
26732004-01-13 Segher Boessenkool <boessen@de.ibm.com>
2674
2675 * Makerules (gen-as-const): Don't silently continue on failure.
2676
26772004-01-14 Steven Munroe <sjmunroe@us.ibm.com>
2678
2679 * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
2680 rtld_hidden_data_def.
2681
26822004-01-14 Ulrich Drepper <drepper@redhat.com>
2683
2684 * libio/libio.h: Add const to function tables types.
2685 * libio/libioP.h: Likewise.
2686 * login/utmp-private.h: Likewise.
2687 * libio/fileops.c: Add const to jump table variable definition.
2688 * libio/genops.c: Likewise.
2689 * libio/iofopncook.c: Likewise.
2690 * libio/iopopen.c: Likewise.
2691 * libio/memstream.c: Likewise.
2692 * libio/obprintf.c: Likewise.
2693 * libio/oldfileops.c: Likewise.
2694 * libio/oldiopopen.c: Likewise.
2695 * libio/strops.c: Likewise.
2696 * libio/vsnprintf.c: Likewise.
2697 * libio/vswprintf.c: Likewise.
2698 * libio/wfileops.c: Likewise.
2699 * libio/wstrops.c: Likewise.
2700 * login/getutent_r.c: Likewise.
2701 * login/getutid_r.c Likewise.
2702 * login/getutline_r.c: Likewise.
2703 * sysdeps/generic/utmp_file.c: Likewise.
2704
27052004-01-09 Bruno Haible <bruno@clisp.org>
2706
2707 * intl/gmo.h (MO_REVISION_NUMBER_WITH_SYSDEP_I): New definition.
2708 * intl/loadmsgcat.c (get_sysdep_segment_value): Handle "I".
2709 (_nl_load_domain): Treat major revision 1 like major revision 0.
2710
27112004-01-11 Bruno Haible <bruno@clisp.org>
2712
2713 * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
2714 width or precision has been seen.
2715
27162004-01-08 Bruno Haible <bruno@clisp.org>
2717
2718 * intl/loadmsgcat.c (_nl_load_domain): When a string pair uses a system
2719 dependent segment not known to this version of the library, ignore
2720 the string pair instead of crashing.
2721
27222004-01-13 Ulrich Drepper <drepper@redhat.com>
2723
2724 * configure.in: Rewrite test to give gcc to clean up after itself.
2725 Patch by Greg Schafer.
2726
2727 * posix/regex.c: Support crappy compilers and platforms which have
2728 problems with alloca.
2729 * posix/regex_internal.h: Likewise.
2730 Patch by Paolo Bonzini.
2731
27322004-01-12 Paolo Bonzini <bonzini@gnu.org>
2733
2734 * posix/regcomp.c [_LIBC && !RE_ENABLE_I18N]:
2735 Drop code to support this, it is never true.
2736 (build_range_exp) [!_LIBC]: Do not create a range
2737 in MBCSET for a single-byte character set.
2738 (build_range_exp) [_LIBC]: Do not create a range
2739 in MBCSET for a single-byte character set without
2740 collation elements.
2741 (init_dfa): Do not conditionalize on _LIBC, it
2742 just makes the code less clear.
2743 (parse_bracket_exp): Use NON_MATCH variable in
2744 addition to "mbcset->non_match", not as an
2745 alternative.
2746 (build_charclass_op): rename NOT parameter to
2747 NON_MATCH, use it instead of declaring a variable.
2748 (parse_bracket_exp) [!_LIBC]: Pass NULL for MBCSET
2749 if the character set is single-byte.
2750
27512004-01-14 Jakub Jelinek <jakub@redhat.com>
2752
2753 * posix/regcomp.c (peek_token_bracket): Check remaining
2754 string length before re_string_peek_byte (x, 1).
2755 (parse_bracket_symbol): Likewise.
2756 * posix/regex_internal.h (re_string_is_single_byte_char): Return
2757 true at last byte in the string.
2758 * posix/bug-regex22.c (main): Add new test.
2759
27602004-01-13 Ulrich Drepper <drepper@redhat.com>
2761
2762 * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
2763 .data.rel.ro.
2764
2765 * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
2766
2767 * elf/rtld.c (_dl_start_final): Initialze __libc_stack_end here.
2768 * sysdeps/generic/dl-sysdep.c: Define __libc_stack_end with
2769 rtld_hidden_def and move into .data.rel.ro section.
2770 * sysdeps/generic/ldsodefs.h: Declare __libc_stack_end with
2771 rtld_hidden_proto.
2772 * sysdeps/generic/libc-start.c: Only initialize __libc_stack_end here
2773 if !SHARED.
2774
27752004-01-13 Richard Henderson <rth@redhat.com>
2776
2777 * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
2778
27792004-01-13 Ulrich Drepper <drepper@redhat.com>
2780
2781 * sysdeps/unix/sysv/linux/dl-execstack.c
2782 (_dl_make_stack_executable): Move common code in front. Use
2783 __builtin_expect.
2784
2785 * sysdeps/unix/sysv/linux/dl-execstack.c: Change interface. Add
2786 challenge for caller.
2787 * sysdeps/generic/ldsodefs.h: Change declaration and type of hook
2788 member in rtld_global appropriately.
2789 * elf/dl-support.c: Likewise.
2790 * elf/dl-load.c (_dl_map_object_from_fd): Take additional paramter.
2791 Pass it on to the changed function.
2792 (_dl_map_object): Pass new parameter to _dl_map_object_from_fd.
2793
27942004-01-13 Richard Henderson <rth@redhat.com>
2795
2796 * sysdeps/alpha/bits/atomic.h (__arch_compare_and_exchange_xxx_8_int):
2797 Cast old up to uint64_t before back down to inner width.
2798 (__arch_compare_and_exchange_xxx_16_int): Likewise.
2799 (__arch_compare_and_exchange_xxx_32_int): Likewise.
2800 (__arch_compare_and_exchange_xxx_64_int): Likewise.
2801 (__arch_compare_and_exchange_val_8_int): Cast result to
2802 the type of the memory.
2803 (__arch_compare_and_exchange_val_16_int): Likewise.
2804 (__arch_compare_and_exchange_val_32_int): Likewise.
2805 (__arch_compare_and_exchange_val_64_int): Likewise.
2806 (atomic_compare_and_exchange_bool_acq): Use __atomic_bool_bysize.
2807 (atomic_compare_and_exchange_bool_rel): Likewise.
2808
2809 * sysdeps/unix/alpha/sysdep.h: Select inline_syscall_r0_asm
2810 based on HAVE___THREAD instead of USE_TLS.
2811
2812 * sysdeps/unix/sysv/linux/alpha/adjtime.c (ADJTIMEX32): New.
2813 (__adjtimex_tv64): Use it.
2814
2815 * sysdeps/unix/sysv/linux/alpha/semctl.c (__new_semctl): Cast
2816 to void* rather than directly to the compatibility structure type.
2817 * sysdeps/unix/sysv/linux/alpha/shmctl.c (__new_shmctl): Likewise.
2818
2819 * sysdeps/unix/sysv/linux/alpha/sigaction.c (struct kernel_sigaction):
2820 Forward declare.
2821
28222004-01-13 Richard Henderson <rth@redhat.com>
2823
2824 * Versions.def (libm): Add GLIBC_2.3.3.
2825 * sysdeps/alpha/fpu/Versions: Add __c1_c*f and c*f to GLIBC_2.3.3.
2826 * sysdeps/alpha/fpu/cabsf.c, sysdeps/alpha/fpu/cargf.c,
2827 sysdeps/alpha/fpu/cfloat-compat.h, sysdeps/alpha/fpu/cimagf.c,
2828 sysdeps/alpha/fpu/conjf.c, sysdeps/alpha/fpu/crealf.c,
2829 sysdeps/alpha/fpu/s_cacosf.c, sysdeps/alpha/fpu/s_cacoshf.c,
2830 sysdeps/alpha/fpu/s_casinf.c, sysdeps/alpha/fpu/s_casinhf.c,
2831 sysdeps/alpha/fpu/s_catanf.c, sysdeps/alpha/fpu/s_catanhf.c,
2832 sysdeps/alpha/fpu/s_ccosf.c, sysdeps/alpha/fpu/s_ccoshf.c,
2833 sysdeps/alpha/fpu/s_cexpf.c, sysdeps/alpha/fpu/s_clog10f.c,
2834 sysdeps/alpha/fpu/s_clogf.c, sysdeps/alpha/fpu/s_cpowf.c,
2835 sysdeps/alpha/fpu/s_cprojf.c, sysdeps/alpha/fpu/s_csinf.c,
2836 sysdeps/alpha/fpu/s_csinhf.c, sysdeps/alpha/fpu/s_csqrtf.c,
2837 sysdeps/alpha/fpu/s_ctanf.c, sysdeps/alpha/fpu/s_ctanhf.c: New files.
2838 * sysdeps/alpha/fpu/bits/mathdef.h: Rename complex float
2839 functions for gcc 3.3.
2840
2841 * sysdeps/generic/s_cacosf.c, sysdeps/generic/s_cacoshf.c,
2842 sysdeps/generic/s_casinf.c, sysdeps/generic/s_casinhf.c,
2843 sysdeps/generic/s_catanf.c, sysdeps/generic/s_catanhf.c,
2844 sysdeps/generic/s_ccosf.c, sysdeps/generic/s_ccoshf.c,
2845 sysdeps/generic/s_cexpf.c, sysdeps/generic/s_clog10f.c,
2846 sysdeps/generic/s_clogf.c, sysdeps/generic/s_cpowf.c,
2847 sysdeps/generic/s_cprojf.c, sysdeps/generic/s_csinf.c,
2848 sysdeps/generic/s_csinhf.c, sysdeps/generic/s_csqrtf.c,
2849 sysdeps/generic/s_ctanf.c, sysdeps/generic/s_ctanhf.c: Don't
2850 weak_alias if the function name has been #defined.
2851
2852 * math/cabsf.c: Move ...
2853 * sysdeps/generic/cabsf.c: ... here.
2854 * math/cargf.c: Move ...
2855 * sysdeps/generic/cargf.c: ... here.
2856 * math/cimagf.c: Move ...
2857 * sysdeps/generic/cimagf.c: ... here.
2858 * math/conjf.c: Move ...
2859 * sysdeps/generic/conjf.c: ... here.
2860 * math/crealf.c: Move ...
2861 * sysdeps/generic/crealf.c: ... here.
2862
28632004-01-13 Ulrich Drepper <drepper@redhat.com>
2864
2865 * Makeconfig: Define relro-LDFLAGS if have-z-relro==yes. Add it to
2866 LDFLAGS.so and LDFLAGS-rtld.
2867 (+link): Add relro-LDFLAGS.
2868 * Makeconfig (shlib.lds): Place __libc_subfreeres, __libc_atexit, and
2869 __libc_thread_subfreeres sections after .jcr section.
2870 * config.make.in: Add have-z-relro.
2871 * configure.in: Add check for -z relro option.
2872 * include/link.h (struct link_map): Add relro_addr and relro_size
2873 members.
2874 * elf/dl-load.c (_dl_map_object_from_fd): Recognize PT_GNU_RELRO.
2875 * elf/dl-reloc.c (_dl_relocate_object): At the end, make relro
2876 part of loaded segments read-only.
2877 * elf/elf.h: Define PT_GNU_RELRO.
2878 * elf/rtld.c (_dl_start): Recognize PT_GNU_RELRO of ld.so.
2879 (dl_main): Recognize PT_GNU_RELRO of the application. Call
2880 _dl_debug_initialize and initialize l_info[DT_DEBUG] before
2881 relocations.
2882
28832004-01-12 Jakub Jelinek <jakub@redhat.com>
2884
2885 * sysdeps/x86_64/strcspn.S: Fix typo in last patch.
2886
28872004-01-11 Andreas Jaeger <aj@suse.de>
2888
2889 * sysdeps/x86_64/__longjmp.S: Add cfi directives.
2890
28912004-01-10 Andreas Jaeger <aj@suse.de>
2892
2893 * sysdeps/unix/sysv/linux/x86_64/__start_context.S: Add cfi directives.
2894 * sysdeps/unix/x86_64/sysdep.S (__syscall_error): Likewise.
2895 * sysdeps/unix/sysv/linux/x86_64/vfork.S: Likewise.
2896 * sysdeps/x86_64/strcspn.S: Likewise.
2897 * sysdeps/x86_64/strspn.S: Likewise.
2898
28992004-01-08 Jakub Jelinek <jakub@redhat.com>
2900
2901 * sysdeps/unix/sysv/linux/x86_64/clone.S (__clone): Add cfi_endproc
2902 right before syscall and cfi_startproc before PSEUDO_END.
2903 Clear %rbp in thread_start.
2904
29052004-01-05 Jakub Jelinek <jakub@redhat.com>
2906
2907 * posix/regcomp.c (regcomp): Fix comment typo.
2908 (regfree): Free preg->translate, clear buffer, allocated, fastmap
2909 and translate fields.
2910
2911 * posix/regcomp.c (build_charclass, buld_charclass_op): Change first
2912 argument to unsigned RE_TRANSLATE_TYPE.
2913 * posix/regex_internal.h (re_string_t): Change trans type to
2914 unsigned RE_TRANSLATE_TYPE.
2915 * posix/regex_internal.c (re_string_construct_common): Cast
2916 trans to unsigned RE_TRANSLATE_TYPE.
2917 (re_string_peek_byte_case, re_string_fetch_byte_case): Avoid fast
2918 path if pstr->trans. Never translate the character through
2919 pstr->trans.
2920 * posix/Makefile (tests): Add bug-regex22.
2921 (bug-regex22-ENV): Set.
2922 * posix/bug-regex22.c: New test.
2923
29242004-01-02 Paolo Bonzini <bonzini@gnu.org>
2925
2926 * posix/regex_internal.c (re_node_set_add_intersect,
2927 re_node_set_merge): Rewritten.
2928 (re_node_set_insert, re_node_set_remove_at):
2929 Avoid memmove, we know what direction we should copy and that we
2930 are copying 32-bit words.
2931 (re_node_set_compare): Iterate backwards.
2932
29332003-12-30 Paul Eggert <eggert@twinsun.com>
2934
2935 * time/mktime.c (verify): New macro.
2936 (time_t_is_integer, twos_complement_arithmetic,
2937 right_shift_propagates_sign, base_year_is_a_multiple_of_100,
2938 C99_integer_division): Document these longstanding assumptions in the
2939 code, and verify them at compile-time.
2940
29412004-01-02 Jakub Jelinek <jakub@redhat.com>
2942
2943 * posix/regex_internal.h (re_match_context_t): Add dfa member.
2944 * posix/regexec.c (match_ctx_free_subtops, search_cur_bkref_entry,
2945 match_ctx_add_sublast, sift_ctx_init, acquire_init_state_context,
2946 prune_impossible_nodes, check_halt_state_context, proceed_next_node,
2947 sift_states_backward, update_cur_sifted_state, check_dst_limits,
2948 check_dst_limits_calc_pos, sift_states_bkref, transit_state,
2949 check_subexp_matching_top, transit_state_sb, transit_state_mb,
2950 transit_state_bkref, get_subexp, get_subexp_sub, check_arrival,
2951 check_arrival_add_next_nodes, expand_bkref_cache, check_node_accept):
2952 Remove dfa parameter. Get dfa from mctx. Adjust callers.
2953 (re_search_internal): Initialize mctx.dfa.
2954
2955 * posix/regex_internal.c (re_node_set_insert): Remove unused variables.
2956
2957 * posix/regex_internal.h (re_dfa_t): Add syntax field.
2958 * posix/regcomp.c (parse): Initialize dfa->syntax.
2959 * posix/regexec.c (acquire_init_state_context,
2960 prune_impossible_nodes, check_matching, check_halt_state_context,
2961 proceed_next_node, sift_states_iter_mb, sift_states_backward,
2962 update_cur_sifted_state, sift_states_bkref, transit_state,
2963 transit_state_sb, transit_state_mb, transit_state_bkref,
2964 get_subexp, get_subexp_sub, check_arrival, expand_bkref_cache,
2965 build_trtable): Remove preg argument, add dfa argument instead
2966 and remove dfa = preg->buffer initialization in the body.
2967 Adjust all callers.
2968 (check_node_accept_bytes, group_nodes_into_DFAstates,
2969 check_node_accept): Likewise. Use dfa->syntax instead of
2970 preg->syntax.
2971 (check_arrival_add_next_nodes): Remove preg argument.
2972
2973 * posix/regex_internal.h (re_match_context_t): Make input
2974 re_string_t instead of a pointer to it.
2975 * posix/regex_internal.c (re_string_construct_common): Don't clear
2976 pstr here...
2977 (re_string_construct): ... but only here.
2978 * posix/regexec.c (match_ctx_init): Remove input argument. Don't
2979 initialize fields to zero.
2980 (re_search_internal): Move input into mctx.input.
2981 (acquire_init_state_context, check_matching,
2982 check_halt_state_context, proceed_next_node,
2983 clean_state_log_if_needed, sift_states_bkref, sift_states_iter_mb,
2984 transit_state, transit_state_sb, transit_state_mb,
2985 transit_state_bkref, get_subexp, check_arrival,
2986 check_arrival_add_next_nodes, check_node_accept, extend_buffers):
2987 Change mctx->input into &mctx->input and mctx->input->field into
2988 mctx->input.field.
2989
29902004-01-02 Jakub Jelinek <jakub@redhat.com>
2991 Paolo Bonzini <bonzini@gnu.org>
2992
2993 * posix/regex_internal.h (re_const_bitset_ptr_t): New type.
2994 (re_string_t): Add newline_anchor, word_char and word_ops_used fields.
2995 (re_dfa_t): Change word_char type to bitset. Add word_ops_used field.
2996 (re_string_context_at, re_string_reconstruct): Remove last argument.
2997 * posix/regex_internal.c (re_string_allocate): Initialize
2998 pstr->word_char and pstr->word_ops_used.
2999 (re_string_context_at): Remove newline_anchor argument.
3000 Use input->newline_anchor instead, swap && conditions.
3001 Only use IS_WIDE_WORD_CHAR if input->word_ops_used != 0.
3002 Use input->word_char bitmap instead of IS_WORD_CHAR.
3003 (re_string_reconstruct): Likewise.
3004 Adjust re_string_context_at caller.
3005 * posix/regexec.c (acquire_init_state_context,
3006 check_halt_state_context, transit_state, transit_state_sb,
3007 transit_state_mb, transit_state_bkref, check_arrival,
3008 check_node_accept): Adjust re_string_context_at and
3009 re_string_reconstruct callers.
3010 (re_search_internal): Likewise. Set input.newline_anchor.
3011 (build_trtable): Use dfa->word_char bitmap instead of IS_WORD_CHAR.
3012 * posix/regcomp.c (init_word_char): Change return type to void.
3013 Set dfa->word_ops_used.
3014 (free_dfa_content): Don't free dfa->word_char.
3015 (parse_expression): Remove error handling for init_word_char.
3016
30172004-01-01 Paolo Bonzini <bonzini@gnu.org>
3018
3019 * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
3020 bitfield.
3021
3022 * posix/regex_internal.c (re_node_set_insert): Rewrite.
3023
30242004-01-01 Ulrich Drepper <drepper@redhat.com>
3025
3026 * posix/getconf.c: Update copyright year.
3027 * nss/getent.c: Likewise.
3028 * nscd/nscd_nischeck.c: Likewise.
3029 * iconv/iconvconfig.c: Likewise.
3030 * iconv/iconv_prog.c: Likewise.
3031 * elf/ldconfig.c: Likewise.
3032 * catgets/gencat.c: Likewise.
3033 * csu/version.c: Likewise.
3034 * elf/ldd.bash.in: Likewise.
3035 * elf/sprof.c (print_version): Likewise.
3036 * locale/programs/locale.c: Likewise.
3037 * locale/programs/localedef.c: Likewise.
3038 * nscd/nscd.c (print_version): Likewise.
3039 * debug/xtrace.sh: Likewise.
3040 * malloc/memusage.sh: Likewise.
3041 * malloc/mtrace.pl: Likewise.
3042
30432004-01-01 Petter Reinholdtsen <pere@hungry.com>
3044
3045 * stdlib/strfmon.c: Make formatting of left-justified currency
3046 values match the the POSIX standard. When using format string
3047 "[%-14#5.4n]" to print -123.45, the result should be
3048 "[-$ 123.4500 ]", not "[-$123.4500 ]".
3049
30502004-01-01 Andreas Jaeger <aj@suse.de>
3051
3052 * resolv/Makefile (generated): New.
3053
30542003-12-31 Joseph S. Myers <jsm@polyomino.org.uk>
3055
3056 * CONFORMANCE: Update.
3057
30582003-12-30 Paul Eggert <eggert@twinsun.com>
3059
3060 * time/mktime.c: (my_mktime_localtime_r):
3061 Remove. All uses changed to __localtime_r.
3062 (__localtime_r) [!defined _LIBC]: New macro. Include "time_r.h" to
3063 get its implementation.
3064 Fix compile-command to allow for TIME_R_POSIX.
3065
3066 * time/strftime.c (my_strftime_gmtime_r, my_strftime_localtime_r):
3067 Remove. All uses changed to __localtime_r and __gmtime_r.
3068 (__gmtime_r, __localtime_r) [!HAVE_TM_GMTOFF]: New macros.
3069 Include "time_r.h" to get their implementations.
3070
3071 * time/timegm.c: Allow use in GNU applications outside glibc.
3072 [defined HAVE_CONFIG_H]: Include <config.h>.
3073 [!defined _LIBC]: Include "timegm.h", <time_r.h>.
3074 Define __gmtime_r, and declare __mktime_internal.
3075 (timegm): Define via a prototype, since we can safely assume C89 now.
3076
3077 * time/mktime.c (check_result): Use less-confusing report format.
3078 "long" -> "long int", as per usual GNU style.
3079 (main): Likewise.
3080 Don't loop if the iteration overflows time_t.
3081 Allow a negative step in the iteration.
3082
3083 * time/mktime.c: Assume freestanding C89 or better.
3084 (HAVE_LIMITS_H, STDC_HEADERS) [defined _LIBC]: Remove;
3085 assume they're 1.
3086 (__P): Remove; not used.
3087 (CHAR_BIT, INT_MIN, INT_MAX): Remove; <limits.h> defines them.
3088 (mktime, not_equal_tm, print_tm, check_result, main): Use prototypes.
3089 Prototypes use const * where appropriate.
3090 (main) [DEBUG]: Fix typo in testing code uncovered by above changes,
3091 which caused the testing code to dump core on some hosts.
3092
30932003-12-31 Ulrich Drepper <drepper@redhat.com>
3094
3095 * locale/setlocale.c (setlocale): Avoid duplicating locale names
3096 if we can reuse old strings.
3097
3098 * inet/rcmd.c: Provide better error message in case of unknown
3099 host. Remove USE_IN_LIBIO.
3100
3101 * nscd/nscd.init: Updated version, more conforming with current
3102 init file standards.
3103
3104 * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
3105 /var/run/nscd directory.
3106 (_PATH_NSCDSOCKET): Likewise.
3107
3108 * test-skeleton.c (timeout_handler): Fix error message.
3109
3110 * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
3111 CNT == 0.
3112
31132003-12-30 Jakub Jelinek <jakub@redhat.com>
3114
3115 * posix/regexec.c (get_subexp): Only set bkref_str after the first
3116 loop, use buf + bkref_str_off in the loop instead.
3117 * posix/bug-regex11.c (tests): Add 3 new tests.
3118
3119 * posix/regexec.c (clean_state_log_if_need): Rename to...
3120 (clean_state_log_if_needed): ...this.
3121 (transit_state_mb, get_subexp_sub): Adjust callers.
3122
3123 * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
3124 failed. Reported by Steve Grubb.
3125
31262003-12-29 Ulrich Drepper <drepper@redhat.com>
3127
3128 * elf/elf.h: Add a few definitions from Solaris 9.
3129
31302003-12-29 Andreas Schwab <schwab@suse.de>
3131
3132 * stdio-common/Makefile (CFLAGS-errlist.c, CFLAGS-siglist.c): Add
3133 $(fno_unit_at_a_time) to avoid reordering assembler output.
3134
31352003-12-29 Jakub Jelinek <jakub@redhat.com>
3136
3137 * posix/regexec.c (re_copy_regs): Revert comment change.
3138 Avoid memory leak if realloc fails.
3139 (proceed_next_node): Return -2 if re_node_set_insert fails.
3140 Return -2 if push_fail_stack fails.
3141 (push_fail_stack): Change fs->alloc only after successful realloc.
3142 (pop_fail_stack): Formatting.
3143 (set_regs): If proceed_next_node returns -2, free eps_via_nodes and fs.
3144 (check_arrival_add_next_nodes): Merge identical statements
3145 from if branches.
3146
3147 * signal/Makefile (tests): Add tst-raise.
3148 * signal/tst-raise.c: New test.
3149
31502003-12-28 Ulrich Drepper <drepper@redhat.com>
3151
3152 * posix/regcomp.c (mark_opt_subexp_iter): Declare IDX as int.
3153
3154 * posix/regexec.c (re_copy_regs): Fix testing for failed allocation.
3155 (push_fail_stack): Add missing check for failed memory allocation.
3156
3157 * libio/libio.h: Use __builtin_expect in _IO_getc_unlocked,
3158 _IO_peekc_unlocked, _IO_putc_unlocked, _IO_getwc_unlocked, and
3159 _IO_putwc_unlocked.
3160
31612003-12-28 Andreas Jaeger <aj@suse.de>
3162
3163 * sysdeps/ieee754/dbl-64/e_j0.c (__ieee754_y0): Raise only
3164 overflow for 0 as argument. Raise Invalid exception for negative args.
3165 * sysdeps/ieee754/dbl-64/e_jn.c (__ieee754_yn): Likewise.
3166 * sysdeps/ieee754/dbl-64/e_j1.c (__ieee754_y0): Likewise.
3167 * sysdeps/ieee754/ldb-128/e_jnl.c (__ieee754_ynl): Likewise.
3168 * sysdeps/ieee754/ldb-128/e_j0l.c (__ieee754_y0l): Likewise.
3169 * sysdeps/ieee754/ldb-128/e_j1l.c (__ieee754_y1l): Likewise.
3170 * sysdeps/ieee754/ldb-96/e_jnl.c (__ieee754_ynl): Likewise.
3171 * sysdeps/ieee754/ldb-96/e_j0l.c (__ieee754_y0l): Likewise.
3172 * sysdeps/ieee754/ldb-96/e_j1l.c (__ieee754_y1l): Likewise.
3173 * sysdeps/ieee754/flt-32/e_jnf.c (__ieee754_ynf): Likewise.
3174 * sysdeps/ieee754/flt-32/e_j0f.c (__ieee754_y0f): Likewise.
3175 * sysdeps/ieee754/flt-32/e_j1f.c (__ieee754_y1f): Likewise.
3176
3177 * math/libm-test.inc (yn_test): Expect invalid exception for
3178 negative arguments.
3179 (y0_test): Likewise.
3180 (y1_test): Likewise.
3181
3182 * sysdeps/ieee754/dbl-64/e_exp.c (__ieee754_exp): Do not raise
3183 execptions for exp(NaN).
3184
31852003-12-23 Paolo Bonzini <bonzini@gnu.org>
3186
3187 * posix/regex_internal.c (re_dfa_add_node): Initialize opt_subexp.
3188 * posix/regex_internal.h (re_token_type_t): Put OP_DUP_PLUS
3189 among the tokens, rather than among the epsilon-transiting nodes.
3190 (re_token_t): Add the opt_subexp flag.
3191 * posix/regcomp.c (optimize_utf8, calc_first,
3192 calc_next, calc_epsdest): Don't consider OP_DUP_PLUS.
3193 (mark_opt_subexp, mark_opt_subexp_iter): New functions.
3194 (parse_dup_op): Mostly rewritten, lowering OP_DUP_PLUS to
3195 OP_DUP_ASTERISK and marking optional subexpressions
3196 as such using mark_opt_subexp.
3197 * posix/regexec.c (set_regs): Initialize PREV_INDEX_MATCH
3198 and pass it to update_regs.
3199 (update_regs): Use the PREV_INDEX_MATCH parameter, together
3200 with the opt_subexp flag, in order to discard a final empty
3201 match of a repeated subexpression.
3202 * posix/BOOST.tests: Adjust test vectors.
3203 * posix/PCRE.tests: Likewise.
3204 * posix/rxspencer/tests: Likewise.
3205
32062000-05-22 Jakub Jelinek <jakub@redhat.com>
3207
3208 * sysdeps/i386/fpu/bits/mathinline.h (__expm1_code): Avoid using ?:
3209 with omitted middle operand.
3210
32112003-12-22 Jakub Jelinek <jakub@redhat.com>
3212
3213 * posix/regcomp.c: Remove C99-ism.
3214 * posix/tst-rxspencer.c: Likewise.
3215 Based on a patch by Alex Davis <alex14641@yahoo.com>.
3216
32172003-12-17 Paolo Bonzini <bonzini@gnu.org>
3218
3219 * posix/regex_internal.h [!_LIBC] (internal_function): Define.
3220 (re_string_allocate, re_string_construct, re_string_reconstruct,
3221 re_string_realloc_buffers, build_wcs_buffer,
3222 build_wcs_upper_buffer, build_upper_buffer,
3223 re_string_translate_buffer, re_string_destruct,
3224 re_string_elem_size_at, re_string_char_size_at,
3225 re_string_wchar_at, re_string_context_at,
3226 re_node_set_alloc, re_node_set_init_1
3227 re_node_set_init_2, re_node_set_init_copy,
3228 re_node_set_add_intersect, re_node_set_init_union,
3229 re_node_set_merge, re_node_set_insert
3230 re_node_set_compare, re_node_set_contains
3231 re_node_set_remove_at, re_dfa_add_node,
3232 re_acquire_state, re_acquire_state_context,
3233 free_state): Add internal_function to declaration.
3234
3235 * posix/regexec.c (match_ctx_init, match_ctx_clean,
3236 match_ctx_free, match_ctx_free_subtops,
3237 match_ctx_add_entry, search_cur_bkref_entry,
3238 match_ctx_clear_flag, match_ctx_add_subtop,
3239 match_ctx_add_sublast, sift_ctx_init,
3240 re_search_internal, re_search_2_stub, re_search_stub,
3241 re_copy_regs, acquire_init_state_context,
3242 prune_impossible_nodes, check_matching,
3243 check_halt_node_context, check_halt_state_context
3244 update_regs, proceed_next_node, push_fail_stack,
3245 pop_fail_stack, set_regs, free_fail_stack_return,
3246 sift_states_iter_mb, sift_states_backward
3247 update_cur_sifted_state, add_epsilon_src_nodes,
3248 sub_epsilon_src_nodes, check_dst_limits,
3249 check_dst_limits_calc_pos, check_subexp_limits,
3250 sift_states_bkref, clean_state_log_if_need,
3251 merge_state_array, transit_state,
3252 check_subexp_matching_top, transit_state_sb,
3253 transit_state_mb, transit_state_bkref,
3254 get_subexp, get_subexp_sub, find_subexp_node,
3255 check_arrival, check_arrival_add_next_nodes,
3256 find_collation_sequence_value, check_arrival_expand_ecl,
3257 check_arrival_expand_ecl_sub, expand_bkref_cache,
3258 build_trtable, check_node_accept_bytes, extend_buffers,
3259 group_nodes_into_DFAstates, check_node_accept): Likewise.
3260
3261 * posix/regex_internal.c (re_string_construct_common,
3262 re_string_skip_chars, create_newstate_common,
3263 register_state, create_ci_newstate, create_cd_newstate,
3264 calc_state_hash): Likewise.
3265 (re_string_peek_byte_case, re_fetch_byte_case): Change
3266 declaration from ANSI to K&R.
3267
32682003-12-16 Paolo Bonzini <bonzini@gnu.org>
3269
3270 * posix/regexec.c (build_trtable): Don't allocate the trtable
3271 until state->word_trtable is known. Don't hardcode UINT_BITS
3272 iterations on each bitset item.
3273
32742003-12-22 Maciej W. Rozycki <macro@ds2.pg.gda.pl>
3275
3276 * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init):
3277 Initialize REF before passing it to _dl_lookup_symbol.
3278
32792003-12-21 Roland McGrath <roland@frob.com>
3280
3281 * sysdeps/mach/hurd/dl-sysdep.c (_exit): Define with attribute_hidden.
3282
32832003-12-21 Jakub Jelinek <jakub@redhat.com>
3284
3285 * posix/regcomp.c (duplicate_node, duplicate_node_closure): Revert
3286 2003-11-24 changes.
3287 * posix/regexec.c (group_nodes_into_DFAstates): For CHARACTER with
3288 NEXT_{,NOT}WORD_CONSTRAINT check word_char bit.
3289 * posix/bug-regex19.c (tests): Add new tests.
3290
3291 * posix/regexec.c (check_dst_limits_calc_pos): Fix formatting.
3292
3293 * posix/regcomp.c (parse_dup_op): Return NULL if dup_elem is NULL,
3294 after checking syntax. Optimize.
3295 (calc_first): Fix comment.
3296 * posix/bug-regex13.c (tests): Add new tests.
3297
32982003-12-21 Roland McGrath <roland@redhat.com>
3299
3300 * manual/arith.texi (Parsing of Integers): Typo fix.
3301
33022003-12-20 Roland McGrath <roland@frob.com>
3303
3304 * sysdeps/generic/ifreq.c (__ifreq) [_HAVE_SA_LEN]: Fix typo:
3305 add missing dereference of IFREQS before counting loop.
3306
33072003-12-21 Andreas Schwab <schwab@suse.de>
3308
3309 * sysdeps/m68k/m68020/bits/atomic.h: Avoid matching memory
3310 constraints.
3311
33122003-12-20 Ulrich Drepper <drepper@redhat.com>
3313
3314 * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
3315
33162003-12-18 Ulrich Drepper <drepper@redhat.com>
3317
3318 * stdio-common/printf_fp.c: Add support to use alternative decimal
3319 digits.
3320 * stdio-common/vfprintf.c (vfprintf): Pass use_outdigits flags to
3321 __printf_fp. Patch by Hamed Malek <hamed@bamdad.org>.
3322
33232003-12-18 Carlos O'Donell <carlos@baldric.uwo.ca>
3324
3325 * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
3326 reload PIC if we need to call __syscall_error, cleanup asm.
3327
33282003-12-17 Carlos O'Donell <carlos@baldric.uwo.ca>
3329
3330 * sysdeps/hppa/fpu/fclrexcpt.c (feclearexcept): Right shift
3331 FE_ALL_EXCEPT before complimenting.
3332 * sysdeps/hppa/fpu/fegetenv.c (fegetenv): Use asm 'ma,' completer,
3333 and gcc '+r' constraint.
3334 * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Likewise.
3335 * sysdeps/hppa/fpu/fesetenv.c (fesetenv): Likewise.
3336 * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Read raised
3337 exception bits, OR with envp, pass to fesetenv.
3338 * sysdeps/hppa/fpu/fraiseexcpt.c (feraiseexcept): Add delayed
3339 exception flushing, FE_UNDERFLOW is DBL_MIN/3.0, FE_INEXACT is
3340 triggered by M_PI/69.69 converted to single precision.
3341 * sysdeps/hppa/fpu/fsetexcptflg.c (fesetexceptflag): Set enable
3342 bits not raised exception bits.
3343
3344 * sysdeps/hppa/Makefile: Add dl-symaddr and dl-fptr to the
3345 correct build strings.
3346 * sysdeps/hppa/dl-fptr.h: New file.
3347 * sysdeps/hppa/dl-fptr.c: Removed.
3348 * sysdeps/hppa/dl-symaddr.c (_dl_symbol_address): Use _dl_make_ftpr,
3349 remove const qualifier for map.
3350 (_dl_function_address): Removed.
3351 * sysdeps/hppa/dl-lookupcfg.h: DL_LOOKUP_ADDRESS must clear
3352 PLABEL32 bits, define DL_AUTO_FUNCTION_ADDRESS and
3353 DL_STATIC_FUNCTION_ADDRESS, DL_DT_INIT_ADDRESS and
3354 DL_DT_FINI_ADDRESS use the previous two macros.
3355
33562003-12-17 Jakub Jelinek <jakub@redhat.com>
3357
3358 * malloc/mtrace.c (tr_old_memalign_hook): New variable.
3359 (tr_memalignhook): New function.
3360 (mtrace): Register tr_memalignhook.
3361 (muntrace): Deregister tr_memalignhook.
3362 * malloc/malloc.c (__posix_memalign): If __memalign_hook != NULL,
3363 call it directly instead of memalign_internal.
3364
33652003-12-17 Ulrich Drepper <drepper@redhat.com>
3366
3367 * misc/mntent_r.c: Change encoding to match recently changed decoder.
3368 Patch by Alexander Achenbach <xela@slit.de>.
3369
33702003-12-16 Steven Munroe <sjmunroe@us.ibm.com>
3371
3372 * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
3373 vrregset_t.
3374
33752003-12-16 Steven Munroe <sjmunroe@us.ibm.com>
3376
3377 * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
3378 conditional to include typedef elf_vrreg_t.
3379
33802003-12-17 Paolo Bonzini <bonzini@gnu.org>
3381
3382 * posix/regexec.c (re_search_internal): Limit search to the
3383 beginning of the buffer if the initial states are empty for
3384 contexts that do not include CONTEXT_BEGBUF or, if
3385 !preg->newline_anchor, that do not include any one of
3386 CONTEXT_BEGBUF and CONTEXT_NEWLINE.
3387
33882003-12-17 Andreas Jaeger <aj@suse.de>
3389
3390 * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
3391 Kevin Pedretti <pedretti@ieee.org>.
3392
33932003-12-17 Ulrich Drepper <drepper@redhat.com>
3394
3395 * elf/rtld.c: Don't use strong_alias to define _rtld_local. This
3396 removes the visibility attributes which might be defined earlier
3397 for some gcc versions. Instead spell out what strong_alias does
3398 plus the visibility.
3399
34002003-12-16 Petter Reinholdtsen <pere@hungry.com>
3401
3402 * posix/regex_internal.h: Make sure the regex code compile
3403 with non-GCC compilers by hiding attributes.
3404
34052003-12-16 Jakub Jelinek <jakub@redhat.com>
3406 Paolo Bonzini <bonzini@gnu.org>
3407
3408 * posix/regexec.c (group_nodes_into_DFAstates): Never produce
3409 dests_ch items that are empty.
3410
34112003-12-14 Paolo Bonzini <bonzini@gnu.org>
3412
3413 * posix/regexec.c (check_arrival): Remove duplicate test.
3414
34152003-12-15 Ulrich Drepper <drepper@redhat.com>
3416
3417 * posix/regcomp.c: Make !RE_ENABLE_I18N work again.
3418 * posix/regex_internal.c: Likewise.
3419 * posix/regexec.c: Likewise.
3420 Patch by Paolo Bonzini.
3421
34222003-12-14 Paolo Bonzini <bonzini@gnu.org>
3423
3424 * posix/regex_internal.c (re_acquire_state_context):
3425 Compare the node sets after all the other comparisons.
3426
34272003-12-13 Paolo Bonzini <bonzini@gnu.org>
3428
3429 * posix/regexec.c (find_subexp_node, check_arrival,
3430 check_arrival_add_next_nodes, check_arrival_expand_ecl,
3431 check_arrival_expand_ecl_sub, expand_bkref_cache):
3432 Rename the FL_OPEN parameter to TYPE, which is either
3433 OP_OPEN_SUBEXP or OP_CLOSE_SUBEXP. Callers adjusted.
3434
34352003-12-12 Andreas Jaeger <aj@suse.de>
3436
3437 * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
3438 to syscall.
3439
34402003-12-11 Ulrich Drepper <drepper@redhat.com>
3441
3442 * sysdeps/unix/sysv/linux/kernel-features.h: Remove __ASSUME_VSYSCALL.
3443 There might always be processes which have no vDSO.
3444 * sysdeps/generic/dl-sysdep.c: Remove __ASSUME_VSYSCALL uses.
3445 * sysdeps/unix/sysv/linux/i386/sigaction.c: Likewise.
3446
34472003-12-11 Carlos O'Donell <carlos@baldric.uwo.ca>
3448
3449 * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
3450 in the right order.
3451
34522003-12-01 Jes Sorensen <jes@wildopensource.com>
3453
3454 * rt/tst-clock.c (do_test): Print message when skipping
3455 CLOCK_PROCESS_CPUTIME_ID test.
3456
3457 * sysdeps/unix/sysv/linux/ia64/clock_getcpuclockid.c: New file.
3458 Provide CLOCK_PROCESS_CPUTIME_ID only if /proc/sal/itc_drift is 0.
3459
34602003-12-02 David Mosberger <davidm@hpl.hp.com>
3461
3462 * sysdeps/ia64/elf/initfini.c: Add unwind info.
3463
3464 * sysdeps/ia64/dl-machine.h (elf_machine_matches_host): Mark with
3465 attribute "unused".
3466 (elf_machine_dynamic): Mark with attributes "unused" and "const".
3467 (elf_machine_runtime_setup): Likewise.
3468
3469 * sysdeps/generic/dl-fptr.c (make_fptr_table): Mark with
3470 attribute "always_inline".
3471 * sysdeps/ia64/dl-machine.h (__ia64_init_bootstrap_fdesc_table):
3472 Likewise.
3473
3474 * configure.in: Check whether compiler has libunwind support.
3475 * config.make.in (have-cc-with-libunwind): New variable.
3476 * config.h.in (HAVE_CC_WITH_LIBUNWIND): New macro.
3477 * Makeconfig (gnulib): If have-cc-with-libunwind is "yes", also
3478 mention -lunwind.
3479
34802003-11-12 David Mosberger <davidm@hpl.hp.com>
3481
3482 * sysdeps/unix/sysv/linux/ia64/sysdep.h: Define DO_CALL_VIA_BREAK.
3483 Redefine DO_CALL to use vdso if supported, otherwise DO_CALL_VIA_BREAK.
3484 Likewise for DO_INLINE_SYSCALL. Make INTERNAL_SYSCALL use
3485 DO_INLINE_SYSCALL.
3486
3487 * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
3488 instead of DO_CALL().
3489
3490 * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
3491 of DO_CALL().
3492
3493 * sysdeps/unix/sysv/linux/ia64/brk.S (__curbrk): Restructure it
3494 to take advantage of DO_CALL() macro.
3495 * sysdeps/unix/sysv/linux/ia64/setcontext.S: Likewise.
3496 * sysdeps/unix/sysv/linux/ia64/getcontext.S: Likewise.
3497
3498 * elf/rtld.c (dl_main): Restrict dl_sysinfo_dso check to first
3499 program header. On ia64, the check failed previously because
3500 there are two program headers.
3501
35022003-12-10 Andreas Jaeger <aj@suse.de>
3503 Ruediger Oertel <ro@suse.de>
3504
3505 * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
3506
35072003-12-07 Ulrich Drepper <drepper@redhat.com>
3508
3509 * sysdeps/i386/fpu/s_nexttowardf.c: Construct overflow value correctly.
3510 * sysdeps/i386/fpu/s_nexttoward.c: Likewise.
3511 * sysdeps/ieee754/ldbl-128/s_nexttoward.c: Likewise.
3512 * sysdeps/ieee754/ldbl-96/s_nexttoward.c: Likewise.
3513 * sysdeps/generic/s_nexttowardf.c: Likewise.
3514 * math/Makefile (tests): Add bug-nexttoward.
3515 * math/bug-nexttoward.c: New file.
3516
3517 * sysdeps/generic/s_nextafter.c: Make sure overflow exception is set.
3518 * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
3519 * math/bug-nextafter.c (main): Add tests for overflow and negative
3520 values.
3521
35222003-12-06 Ulrich Drepper <drepper@redhat.com>
3523
3524 * math/Makefile (tests): Add bug-nextafter.
3525 * math/bug-nextafter.c: New file.
3526 * sysdeps/generic/s_nextafter.c: Construct overflow value correctly.
3527 * sysdeps/ieee754/flt-32/s_nextafterf.c: Likewise.
3528 * math/libm-test.inc (nextafter_test): Add test for overflow after
3529 +/-FLT_MAX etc.
3530
35312003-12-04 Steven Munroe <sjmunroe@us.ibm.com>
3532
3533 * sysdeps/powerpc/fpu/fgetexcptflg.c (__fegetexceptflag): Add masking
3534 of fenv.
3535 * sysdeps/powerpc/nofpu/fgetexcptflg.c (__fegetexceptflag): Likewise.
3536
35372003-12-05 Martin Schwidefsky <schwidefsky@de.ibm.com>
3538
3539 * sysdeps/s390/s390-32/elf/setjmp.S (setjmp, __setjmp): Add END
3540 statements.
3541 * sysdeps/s390/s390-64/elf/setjmp.S (setjmp, __setjmp): Likewise.
3542 * sysdeps/s390/s390-32/sysdep.h (ENTRY): Add cfi_startproc directive.
3543 (END): Add cfi_endproc directive.
3544 * sysdeps/s390/s390-64/sysdep.h (ENTRY, END): Likewise.
3545 * sysdeps/unix/sysv/linux/s390/s390-32/socket.S (__socket): Remove
3546 cfi_startproc and cfi_endproc directive.
3547 * sysdeps/unix/sysv/linux/s390/s390-64/socket.S (__socket): Likewise.
3548 * sysdeps/s390/s390-32/addmul_1.S (__mpn_addmul_1): Add CFI directives.
3549 * sysdeps/s390/s390-32/add_n.S (__mpn_add_n): Likewise.
3550 * sysdeps/s390/s390-64/add_n.S (__mpn_add_n): Likewise.
3551 * sysdeps/s390/s390-32/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
3552 Likewise.
3553 * sysdeps/s390/s390-64/dl-machine.h (ELF_MACHINE_RUNTIME_TRAMPOLINE):
3554 Likewise.
3555 * sysdeps/s390/s390-32/mul_1.S (__mpn_mul_1): Likewise.
3556 * sysdeps/s390/s390-32/sub_n.S (__mpn_sub_n): Likewise.
3557 * sysdeps/s390/s390-64/sub_n.S (__mpn_sub_n): Likewise.
3558 * sysdeps/unix/sysv/linux/s390/s390-32/mmap64.S (__mmap64): Likewise.
3559 * sysdeps/unix/sysv/linux/s390/s390-32/mmap.S (__mmap): Likewise.
3560 * sysdeps/unix/sysv/linux/s390/s390-64/mmap.S (__mmap): Likewise.
3561 * sysdeps/unix/sysv/linux/s390/s390-32/syscall.S (syscall): Likewise.
3562 * sysdeps/unix/sysv/linux/s390/s390-64/syscall.S (syscall): Likewise.
3563 * sysdeps/unix/sysv/linux/s390/s390-32/sysdep.S (__syscall_error):
3564 Likewise.
3565 * sysdeps/unix/sysv/linux/s390/s390-64/sysdep.S (__syscall_error):
3566 Likewise.
3567 * sysdeps/unix/sysv/linux/s390/s390-32/clone.S (__clone): Add CFI
3568 directives. Move thread_start out of ENTRY/PSEUDO_END block to
3569 make backchain terminate.
3570 * sysdeps/unix/sysv/linux/s390/s390-64/clone.S (__clone): Likewise.
3571
3572 * sysdeps/s390/s390-32/backtrace.c (trace_arg): New structure.
3573 (unwind_backtrace, unwind_getip): New variables.
3574 (init, __backchain_backtrace, backtrace_helper): New functions.
3575 (__backtrace): Use unwind info for backtrace instead of backchain
3576 walking if the unwind functions can be found.
3577 * sysdeps/s390/s390-64/backtrace.c: Likewise.
3578
3579 * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
3580
3581 * sysdeps/unix/sysv/linux/s390/sys/procfs.h (ELF_NGREG32): New #define.
3582 (elf_greg_t32, elf_gregset_t32, elf_fpregset_t32): New types.
3583 (elf_prstatus32, elf_prpsinfo32): New structures.
3584 (prgregset32_t, prfpregset32_t, prstatus32_t, prpsinfo32_t): New types.
3585
3586 * scripts/data/c++-types-s390-linux-gnu.data: New file.
3587 * scripts/data/c++-types-s390x-linux-gnu.data: New file.
3588
35892003-11-30 Petter Reinholdtsen <pere@hungry.com>
3590
3591 * stdlib/strfmon.c: Correct formatting of international currency
3592 values. The international currency formatting should prefer the
3593 int_* values if they are set for a locale, and use the domestic
3594 values if the int_* values are unset.
3595
35962003-12-03 Jakub Jelinek <jakub@redhat.com>
3597
3598 * posix/Makefile (distribute): Add BOOST.tests.
3599 (tests): Add tst-boost, depend on tst-boost-mem.
3600 (generated): Add tst-boost-mem and tst-boost.mtrace.
3601 (tst-boost-ARGS, tst-boost-ENV): Set.
3602 ($(objpfx)tst-boost-mem): New.
3603 * posix/tst-boost.c: New test.
3604 * posix/BOOST.tests: New file.
3605
3606 * posix/Makefile (distribute): Add PCRE.tests.
3607 (tests): Add tst-pcre, depend on tst-pcre-mem.
3608 (generated): Add tst-pcre-mem and tst-pcre.mtrace.
3609 (tst-pcre-ARGS, tst-pcre-ENV): Set.
3610 ($(objpfx)tst-pcre-mem): New.
3611 * posix/tst-pcre.c: New test.
3612 * posix/PCRE.tests: New file.
3613
36142003-12-02 Jakub Jelinek <jakub@redhat.com>
3615
3616 * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
3617
3618 * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
3619 * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
3620
36212003-12-03 Ulrich Drepper <drepper@redhat.com>
3622
3623 * locale/programs/locarchive.c (enlarge_archive): Print size info
3624 only in verbose mode.
3625
3626 * locale/iso-3166.def: Three letter code of Romania changed.
3627
36282003-12-02 Roland McGrath <roland@redhat.com>
3629
3630 * scripts/config.sub: Update from master, timestamp='2003-10-20'.
3631 * scripts/config.guess: Update from master, timestamp='2003-10-20'.
3632
36332003-11-30 Andreas Jaeger <aj@suse.de>
3634
3635 * config.make.in (fno-unit-at-a-time): Define.
3636
3637 * configure.in: Add test for -fno-unit-at-a-time.
3638 Fix text for -fpie.
3639
3640 * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
3641 * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
3642
36432003-12-01 Automatic
3644
3645 * version.h (VERSION): Bump to 2.3.3.
3646
36472003-11-30 Andreas Jaeger <aj@suse.de>
3648
3649 * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
3650 decrease stack usage.
3651
36522003-11-30 Andreas Schwab <schwab@suse.de>
3653
3654 * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
3655 (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
3656
36572003-11-29 Ulrich Drepper <drepper@redhat.com>
3658
3659 * misc/mntent_r.c (decode_name): Be compatible with util-linux and
3660 recognize \134 as well.
3661
36622003-10-09 H.J. Lu <hongjiu.lu@intel.com>
3663
3664 * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
3665
36662003-10-08 H.J. Lu <hongjiu.lu@intel.com>
3667
3668 * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
3669 <asm/fpu.h>.
3670 (struct ia64_fpreg): New definition.
3671
3672 * sysdeps/unix/sysv/linux/ia64/sys/procfs.h: Don't include
3673 <asm/elf.h>.
3674 (ELF_NGREG): New #define.
3675 (ELF_NFPREG): Likewise.
3676 (elf_greg_t): New type.
3677 (elf_gregset_t): Likewise.
3678 (elf_fpreg_t): Likewise.
3679 (elf_fpregset_t): Likewise.
3680
36812003-10-08 H.J. Lu <hongjiu.lu@intel.com>
3682
3683 * sysdeps/unix/sysv/linux/ia64/sys/ptrace.h: Include
3684 <sys/ucontext.h>.
3685 (__ptrace_request): Add PTRACE_GETREGS and PTRACE_SETREGS.
3686 (pt_all_user_regs): New type.
3687
36882003-10-10 Simon Josefsson <jas@extundo.com>
3689
3690 * argp/argp-namefrob.h [!_LIBC]: Include mempcpy.h, strcase.h,
3691 strchrnul.h, strndup.h (from gnulib).
3692 * argp/argp-parse.c: Add alloca.h include snippet verbatim from
3693 Autoconf manual.
3694 * argp/argp-help.c: Replace alloca.h include snipper with verbatim
3695 Autoconf manual version.
3696 * argp/argp.h: Map __restrict to restrict or empty string when
3697 necessary, copied verbatim from posix/regex.h.
3698
36992003-10-09 Steven Munroe <sjmunroe@us.ibm.com>
3700
3701 * Makefile: Allow for c++-types-$(config-machine)-$(config-os).data in
3702 addition to c++-types-$(base-machine)-$(config-os).data.
3703 * scripts/data/c++-types-powerpc-linux-gnu.data: New file.
3704 * scripts/data/c++-types-powerpc64-linux-gnu.data: New file.
3705
37062003-11-28 Ulrich Drepper <drepper@redhat.com>
3707
3708 * misc/mntent_r.c (decode_name): Fix decoding of tab, add decoding
3709 of newline.
3710 * manual/sysinfo.texi (mtab): Adjust description accordingly.
3711 Reported by Andries.Brouwer@cwi.nl.
3712
3713 * sysdeps/x86_64/fpu/libm-test-ulps: Add some more minor changes
3714 to compensate other setup.
3715
37162003-11-27 Andreas Jaeger <aj@suse.de>
3717
3718 * sysdeps/x86_64/fpu/libm-test-ulps: Add ulps for new atan2 test.
3719
3720 * math/libm-test.inc (atan2_test): Add test that run infinitly.
3721 Reported by "Willus" <etc231etc231@willus.com>.
3722
37232003-11-27 Michael Matz <matz@suse.de>
3724
3725 * sysdeps/ieee754/dbl-64/mpsqrt.c (fastiroot): Fix 64-bit problem
3726 with wrong types.
3727
37282003-11-28 Jakub Jelinek <jakub@redhat.com>
3729
3730 * posix/regexec.c (acquire_init_state_context): Make inline.
3731 Add always_inline attribute.
3732 (check_matching): Add BE macro. Move if (cur_state->has_backref)
3733 into if (dfa->nbackref).
3734 (sift_states_backward): Fix comment.
3735 (transit_state): Add BE macro. Move if (next_state->has_backref)
3736 into if (dfa->nbackref && next_state). Don't check for next_state
3737 != NULL twice.
3738 * posix/regcomp.c (peek_token): Use opr.ctx_type instead of opr.idx
3739 for ANCHOR.
3740 (parse_expression): Only call init_word_char if word context will be
3741 needed.
3742
3743 * posix/bug-regex11.c (tests): Add new tests.
3744
3745 * posix/tst-regex.c: Include getopt.h.
3746 (timing): New variable.
3747 (main): Set timing to 1 if --timing argument is present.
3748 Add 2 new tests.
3749 (run_test, run_test_backwards): Handle timing.
3750
37512003-11-27 Jakub Jelinek <jakub@redhat.com>
3752
3753 * posix/regex_internal.h (re_string_t): Remove mbs_case field.
3754 Add offsets, valid_raw_len, raw_len, raw_stop, mbs_allocated and
3755 offsets_needed fields. Change icase, is_utf8 and map_notascii
3756 type from int bitfield to unsigned char.
3757 (MBS_ALLOCATED, MBS_CASE_ALLOCATED): Remove.
3758 (build_wcs_upper_buffer): Change prototype to return int.
3759 (re_string_peek_byte_case, re_string_fetch_byte_case): Remove
3760 defines, add prototypes.
3761 * posix/regex_internal.c (re_string_allocate): Don't initialize
3762 stop here. Don't initialize mbs_case. Set valid_raw_len.
3763 Use mbs_allocated instead of MBS_* macros.
3764 (re_string_construct): Don't initialize stop and valid_len here.
3765 Don't initialize mbs_case. Use mbs_allocated instead of MBS_*
3766 macros. Reallocate buffers if build_wcs_upper_buffer converted
3767 too few bytes. Set valid_len to bufs_len only for single byte
3768 no translation and set in that case valid_raw_len as well.
3769 (re_string_realloc_buffers): Reallocate offsets if not NULL.
3770 Use mbs_allocated instead of MBS_ALLOCATED. Don't reallocate
3771 mbs_case.
3772 (re_string_construct_common): Initialize raw_len, mbs_allocated,
3773 stop and raw_stop.
3774 (build_wcs_buffer): Apply pstr->trans before mbrtowc instead of
3775 after it. Set valid_raw_len. Don't set mbs_case.
3776 (build_wcs_upper_buffer): Return REG_NOERROR or REG_ESPACE.
3777 Only use the fast path if !pstr->offsets_needed. Apply pstr->trans
3778 before mbrtowc instead of after it. If upper case character
3779 uses different number of bytes than lower case, goto to the
3780 slow path. Don't call towupper unnecessarily twice. Set
3781 valid_raw_len as well. Handle in the slow path the case if
3782 lower and upper case use different number of characters.
3783 Don't set mbs_case.
3784 (re_string_skip_chars): Use valid_raw_len instead of valid_len.
3785 (build_upper_buffer): Don't set mbs_case. Add BE macro. Set
3786 valid_raw_len.
3787 (re_string_translate_buffer): Set mbs instead of mbs_case. Set
3788 valid_raw_len.
3789 (re_string_reconstruct): Use raw_len/raw_stop to initialize
3790 len/stop. Clear valid_raw_len and offsets_needed when clearing
3791 valid_len. Use mbs_allocated instead of MBS_* macros.
3792 Check original offset against valid_raw_len instead of valid_len.
3793 Remove mbs_case handling. Adjust valid_raw_len together with
3794 valid_len. If is_utf8 and looking for tip context, apply
3795 pstr->trans first. If buffers start with partial multi-byte
3796 character, initialize mbs array as well if mbs_allocated.
3797 Check return value of build_wcs_upper_buffer.
3798 (re_string_peek_byte_case): New function.
3799 (re_string_fetch_byte_case): New function.
3800 (re_string_destruct): Use mbs_allocated instead of MBS_ALLOCATED.
3801 Don't free mbs_case. Free offsets.
3802 * posix/regcomp.c (init_dfa): Only check if charset name is UTF-8
3803 if mb_cur_max == 6.
3804 * posix/regexec.c (re_search_internal): Initialize input.raw_stop
3805 as well. Use valid_raw_len instead of valid_len when looking
3806 through fastmap. Adjust registers through input.offsets.
3807 (extend_buffers): Allow build_wcs_upper_buffer to fail.
3808 * posix/bug-regex18.c (tests): Enable #ifdefed out tests. Add new
3809 tests.
3810
38112003-11-26 Jakub Jelinek <jakub@redhat.com>
3812
3813 * posix/regexec.c (check_subexp_limits): Only check close
3814 subexpression limitation if one is found. Formatting.
3815 (sift_states_backward, check_arrival, check_arrival_add_next_nodes):
3816 Formatting.
3817 * posix/bug-regex11.c (tests): Enable most #ifdefed out tests.
3818 Add new test.
3819
38202003-11-26 Ulrich Drepper <drepper@redhat.com>
3821
3822 * sysdeps/unix/sysv/linux/kernel-features.h
3823 (__ASSUME_PROT_GROWSUPDOWN): Define for 2.6.1 and up.
3824 * sysdeps/unix/sysv/linux/dl-execstack.c: Omit compatibility code
3825 if __ASSUME_PROT_GROWSUPDOWN is defined.
3826
38272003-11-26 Andreas Jaeger <aj@suse.de>
3828
3829 * sysdeps/unix/sysv/linux/dl-execstack.c
3830 (_dl_make_stack_executable): Set dl_stack_flags always for
3831 success.
3832
38332003-06-22 Petter Reinholdtsen <pere@hungry.com>
3834
3835 * locale/program/ld-monetary.c: Only check the first three
3836 characters in int_curr_symbol against ISO-4217, to make the
3837 separator character used by a locale independent of the content
3838 in iso-4217.def.
3839 * locale/iso-4217.def: Remove the space character from all
3840 currency values to get the new test code in ld-monetary.c working.
3841
38422003-11-21 David Mosberger <davidm@hpl.hp.com>
3843
3844 * elf/soinit.c (_fini): Put _fini() in .init_array section if
3845 HAVE_INITFINI_ARRAY is defined.
3846
38472003-11-25 Ulrich Drepper <drepper@redhat.com>
3848
3849 * sysdeps/i386/fpu/bits/mathinline.h: Introduce __libc_sqrtl symbol.
3850 Define it appropriately after last change. Use it where __sqrtl
3851 was used.
3852
38532003-11-25 H.J. Lu <hongjiu.lu@intel.com>
3854
3855 * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
3856 sqrt for gcc 3.3 and above.
3857
38582003-11-25 Ulrich Drepper <drepper@redhat.com>
3859
3860 * posix/runptests.c (main): Make errors fatal.
3861 * posix/PTESTS: One test in GA135 and GA136 check functionality
3862 which seems not guaranteed.
3863
38642003-11-25 Jakub Jelinek <jakub@redhat.com>
3865
3866 * posix/regexec.c (re_search_internal): If prune_impossible_nodes
3867 returned REG_NOMATCH, set match_last to -1. Don't initialize
3868 pmatch[0] needlessly. Fix comment.
3869 (prune_impossible_nodes): Don't segfault on NULL state_log entry.
3870 (set_regs): Fix comment.
3871 * posix/regcomp.c (parse_bracket_exp): Only set has_plural_match
3872 if adding both SIMPLE_BRACKET and COMPLEX_BRACKET.
3873 (build_charclass_op): Set has_plural_match if adding both
3874 SIMPLE_BRACKET and COMPLEX_BRACKET.
3875 * posix/bug-regex11.c (tests): Fix register values for one commented
3876 out test. Add new tests.
3877
3878 * posix/regex_internal.c (re_string_allocate): Make sure init_len
3879 is at least dfa->mb_cur_max.
3880 (re_string_reconstruct): If is_utf8, don't fall back into
3881 re_string_skip_chars just because idx points into a middle of
3882 valid UTF-8 character. Instead, set the wcs bytes which correspond
3883 to the partial character bytes to WEOF.
3884 * posix/regexec.c (re_search_internal): Allocate input.bufs_len + 1
3885 instead of dfa->nodes_len + 1 state_log entries initially.
3886 * posix/bug-regex20.c (main): Uncomment backwards case insensitive
3887 tests.
3888
38892003-11-24 Jakub Jelinek <jakub@redhat.com>
3890
3891 * posix/regex_internal.h (re_token_t): Add word_char bit. Add
3892 comment.
3893 (re_dfa_t): Add sb_char field.
3894 (bitset_mask): New function.
3895 * posix/regcomp.c (free_dfa_content): Free sb_char.
3896 (init_dfa): Don't initialize word_char unnecessarily.
3897 Initialize sb_char.
3898 (duplicate_node): Don't duplicate !word_char CHARACTERs with
3899 NEXT_WORD_CONSTRAINT constraint or word_char CHARACTERs with
3900 NEXT_NOTWORD_CONSTRAINT. Return -1 in *new_idx instead.
3901 (duplicate_node_closure): Handle clone_dest == -1 from
3902 duplicate_node.
3903 (peek_token): Initialize word_char bit.
3904 (parse_expression, parse_dup_op): Add comments.
3905 (parse_bracket_exp): Don't set bitmask bits for multi-byte char
3906 starting bytes here at the beginning. Mask off the bits right
3907 before creating SIMPLE_BRACKET.
3908 (build_charclass_op): Likewise.
3909 * posix/regexec.c (group_nodes_into_DFAstates) <case OP_PERIOD>: Only
3910 set accept bits for single-byte characters.
3911 (group_nodes_into_DFAstates): Don't rely on characters 0 .. 127
3912 being single byte encoded and the rest multi-byte.
3913 * posix/bug-regex19.c (tests): Add new tests.
3914 (do_mb_tests): Initialize t to *test.
3915 (main): Fail even on do_mb_tests errors.
3916
39172003-11-23 Ulrich Drepper <drepper@redhat.com>
3918
3919 * posix/regexec.c: Correct several memory allocation problems.
3920 Add more BE.
3921 * posix/regex_internal.c: Likewise.
3922 * posix/regcomp.c: Likewise.
3923
3924 * posix/regexec.c: Add const in a number of places.
3925 * posix/regex_internal.h: Make EPSILON_BIT a macro to help
3926 debugging. Its value isn't important.
3927
39282003-11-22 Ulrich Drepper <drepper@redhat.com>
3929
3930 * posix/PTESTS: Fix first test of GA143.
3931
39322003-11-21 Ulrich Drepper <drepper@redhat.com>
3933
3934 * posix/regex_internal.c (re_dfa_add_node): Add BE, reallocation
3935 isn't likely.
3936
3937 * locale/programs/charmap.c (charmap_read): If encoding is found
3938 not ASCII compatible, set enc_not_ascii_compatible.
3939 * locale/programs/charmap.h: Declare enc_not_ascii_compatible.
3940 * locale/programs/ld-ctype.c (ctype_startup): If
3941 enc_not_ascii_compatible is set, initialize to_nonascii to 1.
3942
39432003-11-22 Jakub Jelinek <jakub@redhat.com>
3944
3945 * elf/rtld.c (process_envvars): Only honor LD_USE_LOAD_BIAS
3946 if !__libc_enable_secure.
3947
3948 * sysdeps/generic/ldsodefs.h (_dl_use_load_bias): New _rtld_global
3949 field.
3950 * elf/rtld.c (_rtld_global): Initialize _dl_use_load_bias field.
3951 (dl_main): Set GL(dl_use_load_bias) default.
3952 (process_envvars): Set GL(dl_use_load_bias) from LD_USE_LOAD_BIAS.
3953 Add EXTRA_LD_ENVVARS_13.
3954 * elf/dl-support.c (_dl_use_load_bias): New variable.
3955 * elf/dl-load.c (_dl_map_object_from_fd): Mask c->mapstart
3956 with GL(dl_use_load_bias).
3957 * sysdeps/generic/unsecvars.h (UNSECURE_ENVVARS): Add
3958 LD_USE_LOAD_BIAS.
3959 * sysdeps/unix/sysv/linux/dl-librecon.h (EXTRA_LD_ENVVARS): Remove.
3960 (EXTRA_LD_ENVVARS_LINUX): Renamed to...
3961 (EXTRA_LD_ENVVARS_13): ... this. Remove case at the beginning.
3962 * sysdeps/unix/sysv/linux/i386/dl-librecon.h (EXTRA_LD_ENVVARS):
3963 Don't undefine first. Remove EXTRA_LD_ENVVARS_LINUX.
3964
39652003-11-21 Ulrich Drepper <drepper@redhat.com>
3966
3967 * posix/regcomp.c (duplicate_node): Remove unnecessary local variable.
3968
3969 * posix/regcomp.c (re_dfa_add_tree_node): Make fourth parameter a
3970 pointer. Adjust callers.
3971
3972 * posix/regcomp.c (fetch_token): Change interface to match
3973 peek_token. This avoids some copying and reduces code size.
3974
39752003-11-21 Jakub Jelinek <jakub@redhat.com>
3976
3977 * posix/bug-regex19.c (tests): Add more tests.
3978
3979 * posix/bug-regex11.c: And one more commented out test.
3980
3981 * posix/tst-rxspencer.c (mb_tests): Don't run identical multi-byte
3982 tests multiple times unnecessarily.
3983
3984 * posix/bug-regex19.c (BRE, ERE): Define.
3985 (tests): Add many new tests, remove UTF-8 ones.
3986 (do_one_test, do_mb_tests): New functions.
3987 (main): Rewritten using do_one_test and do_mb_tests.
3988
39892003-11-20 Ulrich Drepper <drepper@redhat.com>
3990
3991 * posix/PTESTS: Fix first test in GA143.
3992
39932003-11-20 Jakub Jelinek <jakub@redhat.com>
3994
3995 * posix/regex_internal.h (re_dfastate_t): Remove trtable_search.
3996 Add word_trtable.
3997 * posix/regex_internal.c (create_newstate_common, free_state):
3998 Don't free trtable_search.
3999 * posix/regexec.c (check_matching): Remove fl_search argument.
4000 (transit_state_sb): Likewise. #ifdef out as unused.
4001 (build_trtable): Remove fl_search argument. Set state->word_trtable
4002 and state->trtable. Build separate word and non-word tables if
4003 multi-byte and they differ for some character.
4004 (transit_state): Remove fl_search argument. Don't update
4005 state->trtable here. Handle state->word_trtable.
4006 #ifdef out unused call to transit_state_sb.
4007 (re_search_internal): Update check_matching caller.
4008 (group_nodes_into_DFAstates): Don't clear non-ascii chars in accepts
4009 bitmask for multi-byte locales.
4010 * posix/bug-regex19.c (tests): Enable some commented out tests, add
4011 2 new tests.
4012 * posix/tst-rxspencer.c (mb_tests): Don't test [[=b=]] for now as
4013 multi-byte. Don't run identical multi-byte tests multiple times
4014 unnecessarily.
4015 (main): Check setlocale return value.
4016 * posix/Makefile (tst-rxspencer-ARGS): Add --utf8 argument.
4017 (tst-rxspencer-ENV): Remove MALLOC_TRACE, add LOCPATH.
4018 ($(objpfx)tst-rxspencer-mem): Run another tst-rxspencer test
4019 here, without --utf8 argument but with MALLOC_TRACE.
4020
40212003-11-19 Jakub Jelinek <jakub@redhat.com>
4022
4023 * posix/regexec.c (extend_buffers): Don't allocate
4024 twice as big state_log as needed. Don't modify pstr->valid_len
4025 for mb_cur_max == 1 !icase !trans.
4026
4027 * posix/regcomp.c (free_bin_tree): Removed.
4028 (create_tree): Add dfa argument. Don't call re_malloc for
4029 each tree, instead allocate from str_tree_storage.
4030 (re_dfa_add_tree_node): New function.
4031 (free_dfa_content): Handle freeing if dfa->nodes == NULL
4032 or dfa->state_table == NULL.
4033 (re_compile_internal): Call free_dfa_content if init_dfa
4034 fails. Call free_workarea_compile, re_string_destruct
4035 and free_dfa_content for most of the other failure paths.
4036 (init_dfa): Initialize str_tree_storage_idx.
4037 Don't clear any fields on allocation failure.
4038 (free_workarea_compile): Free str_tree_storage chunks
4039 instead of free_bin_tree (dfa->str_tree).
4040 (parse): Call re_dfa_add_tree_node instead of re_dfa_add_node
4041 followed by create_tree. Add dfa argument to remaining
4042 create_tree calls. Remove new_idx variable. Remove calls
4043 to free_bin_tree.
4044 (parse_reg_exp, parse_branch, parse_expression, parse_sub_exp,
4045 parse_dup_op, parse_bracket_exp, build_charclass_op): Likewise.
4046 (duplicate_tree): Remove calls to free_bin_tree, add dfa
4047 argument to create_tree.
4048 * posix/regex_internal.h (BIN_TREE_STORAGE_SIZE): Define.
4049 (bin_tree_storage_t): New type.
4050 (re_dfa_t): Add str_tree_storage and str_tree_storage_idx
4051 fields.
4052 * posix/Makefile (tests): Add bug-regex21.
4053 (generated): Add bug-regex21-mem, bug-regex21.mtrace,
4054 tst-rxspencer-mem and tst-rxspencer.mtrace.
4055 (tests): Depend on $(objpfx)bug-regex21-mem
4056 and $(objpfx)tst-rxspencer-mem.
4057 (bug-regex21-ENV, tst-rxspencer-ENV): Set.
4058 ($(objpfx)bug-regex21-mem, $(objpfx)tst-rxspencer-mem): New.
4059 * posix/tst-rxspencer.c (main): Add call to mtrace.
4060 Free line at the end.
4061 * posix/bug-regex21.c: New test.
4062
40632003-11-19 Ulrich Drepper <drepper@redhat.com>
4064
4065 * posix/bug-regex20.c: Correct invalid UTF-8 sequences.
4066
4067 * posix/regex_internal.c (build_wcs_upper_buffer): If mbrtowc
4068 fails, just use the byte, do no fancy conversions.
4069
4070 * posix/regex_internal.h (re_string_first_byte): Use ->valid_len
4071 not ->len.
4072 (re_string_is_single_byte_char): Likewise.
4073
40742003-11-18 Ulrich Drepper <drepper@redhat.com>
4075
4076 * posix/regexec.c (get_subexp): After calling get_subexp_sub
4077 reload buf and bkref_str. Little optimization by avoiding memcmp.
4078
40792003-11-14 David Mosberger <davidm@hpl.hp.com>
4080
4081 * sysdeps/unix/sysv/linux/ia64/sysdep.h
4082 (GAS_ALIGN_BREAKS_UNWIND_INFO): Define this macro to indicate
4083 that all existing GAS versions have a problem with .align inside
4084 a function.
4085 * sysdeps/ia64/memccpy.S: Work around GAS_ALIGN_BREAKS_UNWIND_INFO bug.
4086 * sysdeps/ia64/memcpy.S: Likewise.
4087 * sysdeps/ia64/memset.S: Likewise.
4088 * sysdeps/ia64/memmove.S: Likewise. Also move the jump-table to
4089 out of .text into .rodata, where it belongs.
4090
4091 * sysdeps/unix/sysv/linux/ia64/pipe.S: There is no need to
4092 save/restore input-arguments, because they're necessarily
4093 preserved by the kernel to support syscall-restart.
4094
40952003-11-18 Jakub Jelinek <jakub@redhat.com>
4096
4097 * posix/regex_internal.h (re_token_type_t): Remove unused ALT,
4098 END_OF_RE_TOKEN_T and SUBEXP. Reorder values. Add OP_UTF8_PERIOD
4099 and EPSILON_BIT.
4100 (IS_EPSILON_NODE): Just test if EPSILON_BIT is set.
4101 (ACCEPT_MB_NODE): Return 1 for OP_UTF8_PERIOD as well.
4102 * posix/regex_internal.c (create_ci_newstate, create_cd_newstate):
4103 Handle OP_UTF8_PERIOD.
4104 (re_string_reconstruct): Set valid_len for single byte char searching
4105 with no translation and case sensitivity.
4106 * posix/regcomp.c (re_compile_fastmap_iter, calc_first): Handle
4107 OP_UTF8_PERIOD.
4108 (re_compile_internal): Don't call optimize_utf8 if preg->translate
4109 != NULL.
4110 (optimize_utf8): Remove BACK_SLASH case.
4111 Transform OP_PERIOD into OP_UTF8_PERIOD if the searching can be
4112 optimized.
4113 (parse_bracket_exp): Don't create SIMPLE_BRACKET if it doesn't have
4114 any bits set and COMPLEX_BRACKET is used.
4115 * posix/regexec.c (transit_state_mb): Fix comment typo.
4116 (group_nodes_into_DFAstates, check_node_accept): Handle
4117 OP_UTF8_PERIOD.
4118 (check_node_accept_bytes): Likewise. Reorder slightly so that
4119 re_string_char_size_at and re_string_elem_size_at are called
4120 only when needed.
4121 * posix/bug-regex20.c (BRE, ERE): Define.
4122 (tests): Use them to make lines shorter. Expect . to be
4123 optimized. Add lots of new tests.
4124 (main): Run (ATM just case sensitive) test with backwards searching
4125 as well.
4126
41272003-11-18 Jakub Jelinek <jakub@redhat.com>
4128
4129 * io/bug-ftw4.c: Include string.h.
4130 * posix/fnmatch.c (mbsinit): Remove define.
4131
41322003-11-17 Jakub Jelinek <jakub@redhat.com>
4133
4134 * posix/regcomp.c (optimize_utf8): Optimize multi-byte chars as
4135 well.
4136 * posix/bug-regex20.c (tests): Add new tests. Multi-byte char
4137 followed by dup operator is expected to be optimized.
4138
4139 * posix/regexec.c (check_node_accept_bytes): Move nrules and j
4140 variables to the block where they are only used, initialize
4141 nrules only immediately before using it.
4142
41432003-11-15 Andreas Jaeger <aj@suse.de>
4144
4145 * sysdeps/x86_64/fpu/s_scalbnl.S: New file.
4146 * sysdeps/x86_64/fpu/s_truncl.S: New file.
4147 * sysdeps/x86_64/fpu/s_nearbyintl.S: New file.
4148 * sysdeps/x86_64/fpu/s_floorl.S: New file.
4149 * sysdeps/x86_64/fpu/s_ilogbl.S: New file.
4150 * sysdeps/x86_64/fpu/e_remainderl.S: New file.
4151
4152