]> git.ipfire.org Git - thirdparty/glibc.git/blame - ChangeLog.14
Update nss tests to new skeleton
[thirdparty/glibc.git] / ChangeLog.14
CommitLineData
edf66db1 12004-04-19 Roland McGrath <roland@redhat.com>
d3b52028 2
edf66db1 3 * rt/tst-mqueue9.c (do_test): Initialize RESULT.
d3b52028 4
edf66db1 52004-04-19 Jakub Jelinek <jakub@redhat.com>
d3b52028 6
edf66db1
SP
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.
d3b52028 13
edf66db1 142004-04-19 Ulrich Drepper <drepper@redhat.com>
d3b52028 15
edf66db1 16 * rt/tst-mqueue7.c (do_test): Make newargv const.
d3b52028 17
edf66db1 182004-04-18 Randolph Chung <tausq@debian.org>
d3b52028 19
edf66db1
SP
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.
d3b52028 23
edf66db1 242004-04-18 Ulrich Drepper <drepper@redhat.com>
d3b52028 25
edf66db1
SP
26 * sysdeps/unix/sysv/linux/powerpc/rt-sysdep.c: New file.
27 * sysdeps/unix/sysv/linux/powerpc/Makefile (librt-routines): Add
28 rt-sysdep.
d3b52028 29
edf66db1
SP
30 * rt/tst-mqueue5.c (mqsend): Don't inline.
31 (mqrecv): Likewise.
d3b52028 32
edf66db1 33 * rt/tst-timer4.c: Include <string.h>.
d3b52028 34
edf66db1 352004-04-17 Jakub Jelinek <jakub@redhat.com>
d3b52028 36
edf66db1
SP
37 * rt/Makefile (tests): Add tst-mqueue8.
38 * rt/tst-mqueue8.c: New test.
d3b52028 39
edf66db1
SP
40 * sysdeps/unix/sysv/linux/s390/Makefile (librt-routines): Add
41 rt-sysdep.
42 * sysdeps/unix/sysv/linux/s390/rt-sysdep.S: New file.
d3b52028 43
edf66db1 442004-03-26 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 45
edf66db1
SP
46 * sysdeps/unix/sysv/linux/wordsize-64/fxstat.c (__fxstat): Don't
47 use "struct kernel_stat".
d3b52028 48
edf66db1 492004-04-02 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 50
edf66db1 51 * sysdeps/ia64/memcmp.S: Fix symbol.
d3b52028 52
edf66db1 532004-04-04 Carlos O'Donell <carlos@baldric.uwo.ca>
d3b52028 54
edf66db1 55 * sysdeps/hppa/Dist: Add bits/link.h elf/entry.h.
d3b52028 56
edf66db1 57 * sysdeps/hppa/bits/link.h: New file.
d3b52028 58
edf66db1
SP
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)).
d3b52028 81
edf66db1 822004-04-05 Carlos O'Donell <carlos@baldric.uwo.ca>
d3b52028 83
edf66db1
SP
84 * sysdeps/hppa/fpu/feupdateenv.c (feupdateenv): Use only sw[0]
85 and call feraiseexcept.
d3b52028 86
edf66db1 872003-11-15 Randolph Chung <tausq@debian.org>
d3b52028 88
edf66db1
SP
89 * gmon/gmon.c (__monstartup): Round kcountsize to multiples of
90 the froms[] array so the array is properly aligned.
d3b52028 91
edf66db1 922004-04-05 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 93
edf66db1 94 * Makeconfig (libgcc_eh): Add -Wl,.
d3b52028 95
edf66db1 96 * configure.in: Add -lgcc_s for --as-needed check.
d3b52028 97
edf66db1 982004-04-16 Kaz Kojima <kkojima@rr.iij4u.or.jp>
d3b52028 99
edf66db1 100 * sysdeps/sh/elf/configure.in: New file.
d3b52028 101
edf66db1 1022004-04-17 Ulrich Drepper <drepper@redhat.com>
d3b52028 103
edf66db1
SP
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.
d3b52028 111
edf66db1 112 * rt/tst-timer4.c: Disable some tests, mark errors better.
d3b52028 113
edf66db1 1142004-04-16 Ulrich Drepper <drepper@redhat.com>
d3b52028 115
edf66db1
SP
116 * rt/tst-mqueue6.c (mqsend): Don't inline.
117 (mqrecv): Likewise.
d3b52028 118
edf66db1 119 * rt/tst-mqueue3.c (do_test): Cope with kernel without mq support.
d3b52028 120
edf66db1
SP
121 * sysdeps/ieee754/bits/nan.h (__nan_union): Add __attribute_used__
122 attribute to keep gcc quiet.
d3b52028 123
edf66db1 1242004-04-16 Jakub Jelinek <jakub@redhat.com>
d3b52028 125
edf66db1 126 * misc/syslog.c (vsyslog): Avoid freeing failbuf.
d3b52028 127
edf66db1 1282004-04-15 Jakub Jelinek <jakub@redhat.com>
d3b52028 129
edf66db1
SP
130 * rt/Makefile (tests): Add tst-timer4.
131 * rt/tst-timer4.c: New test.
d3b52028 132
edf66db1 1332004-04-15 Jakub Jelinek <jakub@redhat.com>
d3b52028 134
edf66db1
SP
135 * rt/tst-mqueue5.c (rtmin_code): New variable.
136 (rtmin_handler): Set it.
137 (thr, do_child, do_test): Also check rtmin_code.
d3b52028 138
edf66db1 1392004-04-14 Jakub Jelinek <jakub@redhat.com>
d3b52028 140
edf66db1
SP
141 * rt/Makefile (tests): Add tst-mqueue7.
142 (tst-mqueue7-ARGS): Set.
143 * rt/tst-mqueue7.c: New test.
d3b52028 144
edf66db1 1452004-04-13 Jakub Jelinek <jakub@redhat.com>
d3b52028 146
edf66db1
SP
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 ().
d3b52028 162
edf66db1 163 * rt/tst-timer3.c: Don't fail if _POSIX_THREADS is not available.
d3b52028 164
edf66db1 1652004-04-13 Thorsten Kukuk <kukuk@suse.de>
d3b52028 166
edf66db1 167 * sysdeps/s390/ffs.c: Include limits.h
d3b52028 168
edf66db1 1692004-04-13 Kaz Kojima <kkojima@rr.iij4u.or.jp>
d3b52028 170
edf66db1
SP
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.
d3b52028 175
edf66db1 1762004-04-15 Atsushi Nemoto <anemo@mba.ocn.ne.jp>
d3b52028 177
edf66db1 178 * sysdeps/mips/dl-machine.h (RTLD_START): Do not use nested .end.
d3b52028 179
edf66db1 1802004-04-12 Ulrich Drepper <drepper@redhat.com>
d3b52028 181
edf66db1
SP
182 * rt/Makefile (tests): Add tst-timer3.
183 * rt/tst-timer3.c: New file. By Roland McGrath.
d3b52028 184
edf66db1 1852004-04-08 Ulrich Drepper <drepper@redhat.com>
d3b52028 186
edf66db1
SP
187 * rt/tst-mqueue3.c: New file.
188 * rt/Makefile (tests): Add tst-mqueue3.
d3b52028 189
edf66db1 1902004-04-08 Jakub Jelinek <jakub@redhat.com>
d3b52028 191
edf66db1
SP
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.
d3b52028 196
edf66db1
SP
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.
d3b52028 245
edf66db1 2462004-04-09 Andreas Schwab <schwab@suse.de>
d3b52028 247
edf66db1
SP
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.
d3b52028 256
edf66db1 2572004-04-09 Thorsten Kukuk <kukuk@suse.de>
d3b52028 258
edf66db1 259 * sysdeps/s390/ffs.c: Don't add ffsl weak alias on s390x.
d3b52028 260
edf66db1 2612004-04-09 Steven Munroe <sjmunroe@us.ibm.com>
d3b52028 262
edf66db1 263 * sysdeps/unix/sysv/linux/powerpc/powerpc64/umount.c: New file.
d3b52028 264
edf66db1 2652004-04-08 Ulrich Drepper <drepper@redhat.com>
d3b52028 266
edf66db1 267 * po/nl.po: Update from translation team.
d3b52028 268
edf66db1 2692004-04-04 Ulrich Drepper <drepper@redhat.com>
d3b52028 270
edf66db1 271 * math/test-tgmath.c: Declare compile_testl inly if we will define it.
d3b52028 272
edf66db1 2732004-04-03 Ulrich Drepper <drepper@redhat.com>
d3b52028 274
edf66db1 275 * sysdeps/powerpc/powerpc64/ffsll.c: New file.
d3b52028 276
edf66db1 277 * string/test-ffs.c: Also test ffsl and ffsll.
d3b52028 278
edf66db1 279 * sysdeps/powerpc/ffs.c: Don't define ffsl for ppc64.
d3b52028 280
edf66db1
SP
281 * sysdeps/powerpc/powerpc64/bits/atomic.h: Never use matching
282 constraints for asm mem parameters.
283 * sysdeps/powerpc/bits/atomic.h: Likewise.
d3b52028 284
edf66db1
SP
285 * sysdeps/powerpc/elf/libc-start.c: No need for a separate
286 function for __aux_init_cache.
d3b52028 287
edf66db1 288 * inet/test-ifaddrs.c: Fight warnings.
d3b52028 289
edf66db1 290 * argp/argp-help.c: Fight warnings.
d3b52028 291
edf66db1 292 * include/time.h: Declare __difftime.
d3b52028 293
edf66db1
SP
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.
d3b52028 297
edf66db1 2982004-04-03 Andreas Jaeger <aj@suse.de>
d3b52028 299
edf66db1 300 * nis/nss-nis.c: Include <string.h> for strncmp.
d3b52028 301
edf66db1 3022004-03-30 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 303
edf66db1
SP
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.
d3b52028 312
edf66db1 3132004-04-02 Ulrich Drepper <drepper@redhat.com>
d3b52028 314
edf66db1
SP
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.
d3b52028 323
edf66db1
SP
324 * sysdeps/unix/sysv/linux/statfs64.c: Don't add __no_statfs64 if
325 __ASSUME_STATFS64 != 0.
d3b52028 326
edf66db1 3272004-04-02 Thorsten Kukuk <kukuk@firun.suse.de>
d3b52028 328
edf66db1
SP
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.
d3b52028 334
edf66db1 3352004-04-02 Jakub Jelinek <jakub@redhat.com>
d3b52028 336
edf66db1
SP
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.
d3b52028 353
edf66db1 3542004-04-01 Roland McGrath <roland@redhat.com>
d3b52028 355
edf66db1 356 * elf/tst-execstack.c (do_test): Make F static.
d3b52028 357
edf66db1 3582004-04-01 Ulrich Drepper <drepper@redhat.com>
d3b52028 359
edf66db1
SP
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.
d3b52028 364
edf66db1
SP
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.
d3b52028 371
edf66db1
SP
372 * sysdeps/unix/sysv/linux/sigprocmask.c: Include <string.h>.
373 * time/mktime.c: Likewise.
374 * misc/getpass.c: Likewise.
d3b52028 375
edf66db1
SP
376 * time/difftime.c (__difftime): New renamed. Make old name alias.
377 Use __difftime in recursive call.
d3b52028 378
edf66db1
SP
379 * sysdeps/unix/sysv/linux/powerpc/ioctl.c (__ioctl): Use
380 __tcgetattr() instead of tcgetattr().
d3b52028 381
edf66db1
SP
382 * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S [SHARED]:
383 Use __GI_exit.
d3b52028 384
edf66db1
SP
385 * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S [SHARED]: Use
386 __GI__exit.
d3b52028 387
edf66db1
SP
388 * sysdeps/powerpc/fpu/bits/mathinline.h: Add __signbitf and
389 __signbit inlines.
d3b52028 390
edf66db1
SP
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.
d3b52028 395
edf66db1 396 * elf/elf.h: Define more ppc64 specific dynamic tags.
d3b52028 397
edf66db1 3982004-04-01 Jakub Jelinek <jakub@redhat.com>
d3b52028 399
edf66db1
SP
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.
d3b52028 403
edf66db1 4042004-04-01 Ulrich Drepper <drepper@redhat.com>
d3b52028 405
edf66db1
SP
406 * sysdeps/generic/dl-sysdep.c (_dl_show_auxv): Add handling for
407 ignored entries. Ignore AT_IGNOREPPC.
d3b52028 408
edf66db1 4092004-03-31 Andreas Jaeger <aj@suse.de>
d3b52028 410
edf66db1
SP
411 * libio/fileops.c (new_do_write): Return _IO_size_t to make 64-bit
412 clean.
d3b52028 413
edf66db1 4142004-03-31 Ulrich Drepper <drepper@redhat.com>
d3b52028 415
edf66db1
SP
416 * locale/programs/localedef.c (construct_output_path): Remove
417 remnants of CEN locale names.
d3b52028 418
edf66db1 4192004-03-30 Thorsten Kukuk <kukuk@suse.de>
d3b52028 420
edf66db1
SP
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.
d3b52028 426
edf66db1 4272004-03-30 Richard Henderson <rth@redhat.com>
d3b52028 428
edf66db1 429 * sysdeps/alpha/remqu.S: Detect power-of-two special case.
d3b52028 430
edf66db1 4312004-03-30 Ulrich Drepper <drepper@redhat.com>
d3b52028 432
edf66db1
SP
433 * sysdeps/generic/libc-start.c (LIBC_START_MAIN)
434 [HAVE_CLEANUP_JMP_BUF]: Call __nptl_deallocate_tsd.
d3b52028 435
edf66db1 4362004-03-30 Jakub Jelinek <jakub@redhat.com>
d3b52028 437
edf66db1
SP
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.
d3b52028 444
edf66db1
SP
445 * nis/nss_nis/nis-service.c (_nss_nis_getservbyport_r): Convert
446 proto to host by order for snprintf.
d3b52028 447
edf66db1 4482004-03-30 Ulrich Drepper <drepper@redhat.com>
d3b52028 449
edf66db1
SP
450 * nss/getent.c (services_keys): Don't implement lookups with
451 missing protocol using getservent loop, just pass NULL.
d3b52028 452
edf66db1
SP
453 * sysdeps/unix/sysv/linux/i386/setgroups.c (setgroups): Avoid
454 comparison with limit if we can rely on the syscall being available.
d3b52028 455
edf66db1
SP
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.
d3b52028 460
edf66db1
SP
461 * grp/initgroups.c (initgroups): Limit the initial allocation to 64
462 entries to not allocate too much on systems with really high limits.
d3b52028 463
edf66db1 4642004-03-30 Jakub Jelinek <jakub@redhat.com>
d3b52028 465
edf66db1
SP
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.
d3b52028 471
edf66db1 4722004-03-29 Alexandre Oliva <aoliva@redhat.com>
d3b52028 473
edf66db1
SP
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>
d3b52028 499
edf66db1
SP
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>
d3b52028 504
edf66db1
SP
505 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
506 _SC_SIGQUEUE_MAX.
d3b52028 507
edf66db1 5082004-03-26 Ulrich Drepper <drepper@redhat.com>
d3b52028 509
edf66db1
SP
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.
d3b52028 591
edf66db1 5922004-03-24 Ulrich Drepper <drepper@redhat.com>
d3b52028 593
edf66db1
SP
594 * stdio-common/vfscanf.c [!COMPILE_WSCANF] (TOLOWER): Cast first
595 parameter to unsigned char.
596 * sysdeps/generic/strcasestr.c [_LIBC] (TOLOWER): Likewise.
d3b52028 597
edf66db1 5982004-03-24 Jakub Jelinek <jakub@redhat.com>
d3b52028 599
edf66db1
SP
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>
d3b52028 815
edf66db1 816 * po/ca.po: Update from translation team.
d3b52028 817
edf66db1 8182004-03-20 Andreas Jaeger <aj@suse.de>
d3b52028 819
edf66db1
SP
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.
d3b52028 824
edf66db1 825 * sysdeps/unix/sysv/linux/sched_setaffinity.c: Include <alloca.h>.
d3b52028 826
edf66db1 8272004-03-17 Kaz Kojima <kkojima@rr.iij4u.or.jp>
d3b52028 828
edf66db1
SP
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.
d3b52028 833
edf66db1 8342004-03-19 Ulrich Drepper <drepper@redhat.com>
d3b52028 835
edf66db1
SP
836 * time/tzfile.c (__tzfile_default): Correct setting of rule_stdoff
837 and rule_dstoff after reading the posixrules file.
d3b52028 838
edf66db1 8392004-03-18 Ulrich Drepper <drepper@redhat.com>
d3b52028 840
edf66db1
SP
841 * malloc/malloc.c (__posix_memalign): Correct alignment check.
842 Reported by Don Heller <dheller@cse.psu.edu>.
d3b52028 843
edf66db1 8442004-03-18 Jakub Jelinek <jakub@redhat.com>
d3b52028 845
edf66db1
SP
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.
d3b52028 851
edf66db1
SP
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.
d3b52028 869
edf66db1 8702004-03-18 Paul Eggert <eggert@cs.ucla.edu>
d3b52028 871
edf66db1
SP
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).
d3b52028 875
edf66db1 8762004-03-18 Ulrich Drepper <drepper@redhat.com>
d3b52028 877
edf66db1
SP
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.
d3b52028 887
edf66db1
SP
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.
d3b52028 923
edf66db1 9242004-03-16 Jakub Jelinek <jakub@redhat.com>
d3b52028 925
edf66db1
SP
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.
d3b52028 1092
edf66db1 10932004-03-11 Jeroen Dekkers <jeroen@dekkers.cx>
d3b52028 1094
edf66db1
SP
1095 * cppflags-iterator.mk: Change libof-$(cpp-src) to
1096 libof-$(notdir $(cpp-src)).
d3b52028 1097
edf66db1 10982004-03-13 Ulrich Drepper <drepper@redhat.com>
d3b52028 1099
edf66db1
SP
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.
d3b52028 1104
edf66db1 11052004-03-12 Ulrich Drepper <drepper@redhat.com>
d3b52028 1106
edf66db1
SP
1107 * resolv/netdb.h: Define AI_CANONIDN.
1108 * sysdeps/posix/getaddrinfo.c: Implement AI_CANONIDN.
d3b52028 1109
edf66db1 11102004-03-12 Richard Henderson <rth@redhat.com>
d3b52028 1111
edf66db1
SP
1112 * sysdeps/unix/sysv/linux/alpha/select.S: Fix unwind. Propagate
1113 oldvalue from CENABLE to CDISABLE.
d3b52028 1114
edf66db1 11152004-03-12 Ulrich Drepper <drepper@redhat.com>
d3b52028 1116
edf66db1 1117 * sysdeps/unix/sysv/linux/x86_64/sysconf.c: New file.
d3b52028 1118
edf66db1 1119 * sysdeps/unix/sysv/linux/bits/local_lim.h: Define HOST_NAME_MAX.
d3b52028 1120
edf66db1
SP
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.
d3b52028 1128
edf66db1 11292004-03-11 Ulrich Drepper <drepper@redhat.com>
d3b52028 1130
edf66db1
SP
1131 * sysdeps/posix/sysconf.c (__sysconf): Add missing support for
1132 some _SC_* values.
d3b52028 1133
edf66db1 11342004-03-10 Chris Heath <chris@heathens.co.nz>
d3b52028 1135
edf66db1 1136 * iconvdata/gconv.map: Add gconv_end (fixes memory leak).
d3b52028 1137
edf66db1 11382004-03-11 Jakub Jelinek <jakub@redhat.com>
d3b52028 1139
edf66db1
SP
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.
d3b52028 1150
edf66db1
SP
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.
d3b52028 1154
edf66db1 11552004-03-11 Ulrich Drepper <drepper@redhat.com>
d3b52028 1156
edf66db1 1157 * resolv/ns_ttl.c: Don't add ns_parse_ttl for libresolv.so.
d3b52028 1158
edf66db1 11592004-03-10 Ulrich Drepper <drepper@redhat.com>
d3b52028 1160
edf66db1
SP
1161 * sysdeps/generic/errno.c: Include <dl-sysdep.h>. Use
1162 RTLD_PRIVATE_ERRNO to decide whether errno compat symbols are needed.
d3b52028 1163
edf66db1
SP
1164 * elf/dl-sym.c: Unify _dl_sym and _dl_vsym code and make the entry
1165 points wrappers around the unified code.
d3b52028 1166
edf66db1 11672004-03-11 Richard Henderson <rth@redhat.com>
d3b52028 1168
edf66db1
SP
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.
d3b52028 1182
edf66db1 11832004-03-11 Jakub Jelinek <jakub@redhat.com>
d3b52028 1184
edf66db1
SP
1185 * sysdeps/unix/sysv/linux/powerpc/powerpc32/swapcontext.S
1186 (__novec_swapcontext): Branch to novec_* labels.
d3b52028 1187
edf66db1 11882004-03-10 Ulrich Drepper <drepper@redhat.com>
d3b52028 1189
edf66db1 1190 * posix/getopt.c (_): Don't define here for glibc.
d3b52028 1191
edf66db1 11922004-03-10 Jakub Jelinek <jakub@redhat.com>
d3b52028 1193
edf66db1
SP
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.
d3b52028 1423
edf66db1
SP
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.
d3b52028 1427
edf66db1 1428 * sysdeps/posix/gai_strerror.c: Add error string for EAI_IDN_ENCODE.
d3b52028 1429
edf66db1
SP
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>.
d3b52028 1442
edf66db1 14432004-03-08 Jeroen Dekkers <jeroen@dekkers.cx>
d3b52028 1444
edf66db1 1445 * elf/rtld.c (_rtld_global_ro) [MAP_COPY]: Don't set _dl_unload_cache.
d3b52028 1446
edf66db1
SP
1447 * sysdeps/mach/hurd/dl-sysdep.c (_dl_important_hwcaps):
1448 Don't use INTUSE with _dl_signal_error.
d3b52028 1449
edf66db1 14502004-03-08 Ulrich Drepper <drepper@redhat.com>
d3b52028 1451
edf66db1
SP
1452 * sysdeps/powerpc/powerpc64/dl-machine.c (_dl_reloc_overflow):
1453 Don't use INTUSE with _dl_signal_error.
d3b52028 1454
edf66db1 14552004-03-08 Richard Henderson <rth@redhat.com>
d3b52028 1456
edf66db1
SP
1457 * sysdeps/alpha/soft-fp/ots_cvtxt.c (_OtsConvertFloatXT): Fix typo
1458 in name.
d3b52028 1459
edf66db1 14602004-03-07 Ulrich Drepper <drepper@redhat.com>
d3b52028 1461
edf66db1
SP
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.
d3b52028 1465
edf66db1 14662004-03-07 Simon Josefsson <jas@extundo.com>
d3b52028 1467
edf66db1
SP
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.
d3b52028 1476
edf66db1 14772004-03-07 Ulrich Drepper <drepper@redhat.com>
d3b52028 1478
edf66db1
SP
1479 * sysdeps/unix/sysv/linux/ia64/dl-static.c (_dl_static_init): Call
1480 _dl_lookup_symbol_x not _dl_lookup_symbol.
d3b52028 1481
edf66db1
SP
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.
d3b52028 1494
edf66db1 14952004-03-07 Andreas Schwab <schwab@suse.de>
d3b52028 1496
edf66db1 1497 * elf/dl-sym.c: Include <dl-tls.h> only when USE_TLS.
d3b52028 1498
edf66db1 14992004-03-07 Andreas Jaeger <aj@suse.de>
d3b52028 1500
edf66db1
SP
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.
d3b52028 1506
edf66db1 15072004-03-07 Ulrich Drepper <drepper@redhat.com>
d3b52028 1508
edf66db1
SP
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.
d3b52028 1526
edf66db1 15272004-03-06 Ulrich Drepper <drepper@redhat.com>
d3b52028 1528
edf66db1
SP
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.
d3b52028 1586
edf66db1 15872004-03-05 Ulrich Drepper <drepper@redhat.com>
d3b52028 1588
edf66db1
SP
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.
d3b52028 1623
edf66db1
SP
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.
d3b52028 1628
edf66db1 1629 * malloc/malloc.c: Don't call exported interface in the implementation.
d3b52028 1630
edf66db1
SP
1631 * include/wctype.h: Add libc_hidden_proto for __towctrans.
1632 * wctype/towctrans.c: Add libc_hidden_def.
d3b52028 1633
edf66db1 1634 * libio/memstream.c (open_memstream): Use _IO_init with INTUSE.
d3b52028 1635
edf66db1
SP
1636 * posix/regexec.c (transit_state): Remove unused variable
1637 next_state.
d3b52028 1638
edf66db1 1639 * posix/regcomp.c (init_dfa): Use __btowc instead of btowc.
d3b52028 1640
edf66db1
SP
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.
d3b52028 1709
edf66db1 17102004-03-04 Ulrich Drepper <drepper@redhat.com>
d3b52028 1711
edf66db1
SP
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.
d3b52028 1715
edf66db1
SP
1716 * elf/dl-open.c (dl_open_worker): Check that _dl_open is called
1717 from the right place.
d3b52028 1718
edf66db1 17192004-01-15 Paolo Bonzini <bonzini@gnu.org>
d3b52028 1720
edf66db1
SP
1721 * posix/regex.h (REG_STARTEND): Define.
1722 * posix/regexec.c (regexec): Check for REG_STARTEND.
d3b52028 1723
edf66db1 17242004-02-29 Paolo Bonzini <bonzini@gnu.org>
d3b52028 1725
edf66db1
SP
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.
d3b52028 1737
edf66db1 17382004-03-05 Jakub Jelinek <jakub@redhat.com>
d3b52028 1739
edf66db1
SP
1740 * sysdeps/sparc/sparc32/elf/start.S: Handle PIEs.
1741 * sysdeps/sparc/sparc64/elf/start.S: Likewise.
d3b52028 1742
edf66db1 17432004-03-04 Jakub Jelinek <jakub@redhat.com>
d3b52028 1744
edf66db1
SP
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.
d3b52028 1751
edf66db1 17522004-03-03 Jakub Jelinek <jakub@redhat.com>
d3b52028 1753
edf66db1
SP
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.
d3b52028 1778
edf66db1 17792004-03-02 Andreas Schwab <schwab@suse.de>
d3b52028 1780
edf66db1
SP
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.
d3b52028 1784
edf66db1 17852004-03-01 Ulrich Drepper <drepper@redhat.com>
d3b52028 1786
edf66db1
SP
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.
d3b52028 1790
edf66db1
SP
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.
d3b52028 1795
edf66db1 17962004-02-29 Andreas Jaeger <aj@suse.de>
d3b52028 1797
edf66db1
SP
1798 * manual/install.texi (Tools for Compilation): Autoconf 2.53 is
1799 required.
1800 (Supported Configurations): Add x86_64-*-linux.
d3b52028 1801
edf66db1 18022004-02-28 Ulrich Drepper <drepper@redhat.com>
d3b52028 1803
edf66db1 1804 * sysdeps/i386/i686/memcmp.S: Move table to .rodata. Patch by HJ Lu.
d3b52028 1805
edf66db1 18062004-02-27 Jakub Jelinek <jakub@redhat.com>
d3b52028 1807
edf66db1
SP
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.
d3b52028 1811
edf66db1 1812 * sysdeps/unix/sysv/linux/sysconf.c: Include stdlib.h.
d3b52028 1813
edf66db1 18142004-02-26 Ulrich Drepper <drepper@redhat.com>
d3b52028 1815
edf66db1
SP
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.
d3b52028 1835
edf66db1 18362004-02-26 Jakub Jelinek <jakub@redhat.com>
d3b52028 1837
edf66db1
SP
1838 * sysdeps/unix/sysv/linux/clock_settime.c (SYSDEP_SETTIME): Set
1839 retval to -1 on error.
d3b52028 1840
edf66db1 18412004-02-26 Ulrich Drepper <drepper@redhat.com>
d3b52028 1842
edf66db1 1843 * stdlib/canonicalize.c (__realpath): Simplify.
d3b52028 1844
edf66db1
SP
1845 * posix/regcomp.c (parse_expression): Avoid duplication in calls
1846 to build_charclass_op.
d3b52028 1847
edf66db1 18482004-02-26 Jakub Jelinek <jakub@redhat.com>
d3b52028 1849
edf66db1
SP
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.
d3b52028 1854
edf66db1 18552004-02-26 Ulrich Drepper <drepper@redhat.com>
d3b52028 1856
edf66db1
SP
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.
d3b52028 1862
edf66db1
SP
1863 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Use the official
1864 not cancelable interfaces.
d3b52028 1865
edf66db1 18662004-02-24 Arnold D. Robbins <arnold@skeeve.com>
d3b52028 1867
edf66db1
SP
1868 * posix/regex_internal.c (build_wcs_upper_buffer): Enclose
1869 `offsets_needed' label in `#ifdef _LIBC' to silence `unused label'
1870 compiler warning.
d3b52028 1871
edf66db1 18722004-02-24 Nelson H.F. Beebe <beebe@math.utah.edu>
d3b52028 1873
edf66db1
SP
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'.
d3b52028 1883
edf66db1 18842004-02-25 Ulrich Drepper <drepper@redhat.com>
d3b52028 1885
edf66db1
SP
1886 * sysdeps/unix/sysv/linux/sysconf.c (__sysconf): Handle
1887 _SC_NGROUPS_MAX.
d3b52028 1888
edf66db1 18892004-02-23 Jakub Jelinek <jakub@redhat.com>
d3b52028 1890
edf66db1
SP
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.
d3b52028 1895
edf66db1 18962004-02-23 Jakub Jelinek <jakub@redhat.com>
d3b52028 1897
edf66db1
SP
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.
d3b52028 1905
edf66db1 19062004-02-22 Ulrich Drepper <drepper@redhat.com>
d3b52028 1907
edf66db1
SP
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>.
d3b52028 1911
edf66db1 19122004-02-21 Ulrich Drepper <drepper@redhat.com>
d3b52028 1913
edf66db1
SP
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.
d3b52028 1916
edf66db1 19172004-02-21 Andreas Jaeger <aj@suse.de>
d3b52028 1918
edf66db1 1919 * posix/bug-ga1.c: Include <string.h> for memset prototype.
d3b52028 1920
edf66db1 1921 * elf/dl-load.c (_dl_map_object_from_fd): Fix casts used as lvalue.
d3b52028 1922
edf66db1
SP
1923 * iconv/gconv_simple.c (internal_ucs4le_loop): Remove cast used as
1924 lvalue.
d3b52028 1925
edf66db1 19262004-02-19 Carlos O'Donell <carlos@baldric.uwo.ca>
d3b52028 1927
edf66db1
SP
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.
d3b52028 1933
edf66db1 19342004-02-20 Alexandre Oliva <aoliva@redhat.com>
d3b52028 1935
edf66db1
SP
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.
d3b52028 1939
edf66db1 19402004-02-19 Carlos O'Donell <carlos@baldric.uwo.ca>
d3b52028 1941
edf66db1
SP
1942 * sysdeps/hppa/fpu/feholdexcpt.c (feholdexcept): Fix order of fp
1943 status register loads.
d3b52028 1944
edf66db1 19452004-02-20 Thorsten Kukuk <kukuk@suse.de>
d3b52028 1946
edf66db1 1947 * nscd/nscd.c (termination_handler): Use _exit instead of exit
d3b52028 1948
edf66db1 19492004-02-20 Ulrich Drepper <drepper@redhat.com>
d3b52028 1950
edf66db1 1951 * nscd/nscd.c (main): Report fork errors.
d3b52028 1952
edf66db1
SP
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>.
d3b52028 1958
edf66db1 19592004-02-20 Jakub Jelinek <jakub@redhat.com>
d3b52028 1960
edf66db1
SP
1961 * sysdeps/sparc/sparc32/fpu/libm-test-ulps: Add ulps for the
1962 2003-11-27 atan2 test.
d3b52028 1963
edf66db1
SP
1964 * sysdeps/powerpc/fpu/bits/mathinline.h (lrint, lrintf): Protect
1965 with #ifndef __powerpc64__.
d3b52028 1966
edf66db1
SP
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.
d3b52028 1976
edf66db1 19772004-02-19 Jakub Jelinek <jakub@redhat.com>
d3b52028 1978
edf66db1
SP
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.
d3b52028 1982
edf66db1 19832004-02-19 Steven Munroe <sjmunroe@us.ibm.com>
d3b52028 1984
edf66db1
SP
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.
d3b52028 1989
edf66db1 19902004-02-19 Steven Munroe <sjmunroe@us.ibm.com>
d3b52028 1991
edf66db1
SP
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.
d3b52028 2146
edf66db1 21472004-02-12 Ulrich Drepper <drepper@redhat.com>
d3b52028 2148
edf66db1 2149 * posix/getopt.h: Add some non-gcc support. Patch by Aharon Robbins.
d3b52028 2150
edf66db1 21512004-02-12 Mark Brown <bmark@us.ibm.com>
d3b52028 2152
edf66db1 2153 * sysdeps/ia64/fpu/e_fmodf.S: Added text of Intel license.
d3b52028 2154
edf66db1 21552004-02-12 Jakub Jelinek <jakub@redhat.com>
d3b52028 2156
edf66db1
SP
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.
d3b52028 2166
edf66db1
SP
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.
d3b52028 2175
edf66db1 21762004-02-12 Ulrich Drepper <drepper@redhat.com>
d3b52028 2177
edf66db1
SP
2178 * locale/programs/locale.c (show_locale_vars): Don't print a value
2179 for LANG if it is not set.
d3b52028 2180
edf66db1 21812004-02-11 Jakub Jelinek <jakub@redhat.com>
d3b52028 2182
edf66db1
SP
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.
d3b52028 2189
edf66db1 21902004-02-10 Roland McGrath <roland@frob.com>
d3b52028 2191
edf66db1
SP
2192 * sysdeps/mach/hurd/times.c (__times): Use union instead of cast.
2193 * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Likewise.
d3b52028 2194
edf66db1
SP
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.
d3b52028 2199
edf66db1 22002004-02-10 Ulrich Drepper <drepper@redhat.com>
d3b52028 2201
edf66db1
SP
2202 * sysdeps/generic/setenv.c (__add_to_environ): Don't let the
2203 temporary copies of the variables accumulate on the stack.
d3b52028 2204
edf66db1 2205 * stdio-common/_i18n_number.h: Finish last patch.
d3b52028 2206
edf66db1 22072004-02-09 Ulrich Drepper <drepper@redhat.com>
d3b52028 2208
edf66db1 2209 * sysdeps/i386/i686/memcmp.S: New file. Patch by HJ Lu.
d3b52028 2210
edf66db1 22112003-12-05 Roland McGrath <roland@redhat.com>
d3b52028 2212
edf66db1
SP
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.
d3b52028 2217
edf66db1 22182004-02-09 Ulrich Drepper <drepper@redhat.com>
d3b52028 2219
edf66db1 2220 * nis/ypclnt.c: Cleanup last patch.
d3b52028 2221
edf66db1 22222004-02-09 Andreas Jaeger <aj@suse.de>
d3b52028 2223
edf66db1
SP
2224 * configure.in: Remove glibcbug creation.
2225 * configure: Regenerated.
d3b52028 2226
edf66db1 2227 * sysdeps/x86_64/fpu/s_copysignf.S: Only load 4 bytes.
d3b52028 2228
edf66db1 22292004-02-03 Thorsten Kukuk <kukuk@suse.de>
d3b52028 2230
edf66db1
SP
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>
d3b52028 2240
edf66db1 22412004-01-19 Roland McGrath <roland@redhat.com>
d3b52028 2242
edf66db1
SP
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.
d3b52028 2250
edf66db1 22512004-02-09 Roland McGrath <roland@redhat.com>
d3b52028 2252
edf66db1
SP
2253 * time/tzset.c (tzset_internal): Cap hour in POSIX $TZ rule format to
2254 24, not 23.
d3b52028 2255
edf66db1 22562004-01-29 Roland McGrath <roland@redhat.com>
d3b52028 2257
edf66db1
SP
2258 * io/ftwtest-sh: Use $tmp consistently, not literal /tmp.
2259 Reported by Kevin P. Fleming <kpfleming@backtobasicsmgmt.com>.
d3b52028 2260
edf66db1 22612004-02-09 Ulrich Drepper <drepper@redhat.com>
d3b52028 2262
edf66db1
SP
2263 * libio/genops.c (_IO_cleanup): Do not use locking when flushing
2264 the buffers. Some thread might be using a stream.
d3b52028 2265
edf66db1 22662004-02-09 Andreas Jaeger <aj@suse.de>
d3b52028 2267
edf66db1
SP
2268 * sysdeps/x86_64/memcpy.S: Fix alignment [BZ #7].
2269 Patch by Jan Beulich <jbeulich@novell.com>.
d3b52028 2270
edf66db1 22712004-02-09 Andreas Schwab <schwab@suse.de>
d3b52028 2272
edf66db1
SP
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.
d3b52028 2282
edf66db1 22832004-02-09 Ulrich Drepper <drepper@redhat.com>
d3b52028 2284
edf66db1
SP
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.
d3b52028 2290
edf66db1
SP
2291 * sysdeps/i386/fpu/fclrexcpt.c (__feclearexcept): Don't touch bits
2292 other than the status bits [BZ #10].
d3b52028 2293
edf66db1 22942004-02-08 Ulrich Drepper <drepper@redhat.com>
d3b52028 2295
edf66db1
SP
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>.
d3b52028 2304
edf66db1
SP
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.
d3b52028 2309
edf66db1
SP
2310 * stdio-common/printf_size.c: Undo parts of patch from 2000-2-11.
2311 Initialize width correctly.
d3b52028 2312
edf66db1 23132004-02-07 Andreas Jaeger <aj@suse.de>
d3b52028 2314
edf66db1
SP
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.
d3b52028 2327
edf66db1
SP
2328 * iconv/gconv_open.c (__gconv_open): Remove conditional expression
2329 as lvalue.
d3b52028 2330
edf66db1 23312004-02-06 Steven Munroe <sjmunroe@us.ibm.com>
d3b52028 2332
edf66db1
SP
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.
d3b52028 2337
edf66db1 23382004-02-06 Andreas Schwab <schwab@suse.de>
d3b52028 2339
edf66db1
SP
2340 * posix/regcomp.c (build_range_exp): Fix off-by-one.
2341 (parse_bracket_exp): Likewise.
d3b52028 2342
edf66db1 23432004-02-05 Ulrich Drepper <drepper@redhat.com>
d3b52028 2344
edf66db1
SP
2345 * sysdeps/unix/sysv/linux/powerpc/powerpc32/kernel_stat.h: Define
2346 _HAVE_STAT_NSEC and _HAVE_STAT64_NSEC. Patch by Anton Blanchard.
d3b52028 2347
edf66db1 23482004-02-02 Paolo Bonzini <bonzini@gnu.org>
d3b52028 2349
edf66db1
SP
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.
d3b52028 2355
edf66db1 23562004-02-01 Ulrich Drepper <drepper@redhat.com>
d3b52028 2357
edf66db1
SP
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.
d3b52028 2369
edf66db1 2370 * po/nl.po: Update from translation team.
d3b52028 2371
edf66db1 23722004-01-30 Andreas Schwab <schwab@suse.de>
d3b52028 2373
edf66db1
SP
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.
d3b52028 2377
edf66db1 23782004-01-28 Paolo Bonzini <bonzini@gnu.org>
d3b52028 2379
edf66db1
SP
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.
d3b52028 2386
edf66db1 23872004-01-24 Andreas Jaeger <aj@suse.de>
d3b52028 2388
edf66db1
SP
2389 * malloc/obstack.h: Import gnulib version.
2390 * malloc/obstack.c: Likewise.
d3b52028 2391
edf66db1 23922004-01-26 David Mosberger <davidm@hpl.hp.com>
d3b52028 2393
edf66db1
SP
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.
d3b52028 2457
edf66db1 24582004-01-20 Ulrich Drepper <drepper@redhat.com>
d3b52028 2459
edf66db1
SP
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.
d3b52028 2463
edf66db1
SP
2464 * sysdeps/unix/sysv/linux/kernel-features.h: Define
2465 __ASSUME_NO_CLONE_DETACHED for 2.6.2+ kernels.
d3b52028 2466
edf66db1 2467 * catgets/Makefile ($(objpfx)de.msg): Run sed in C locale.
d3b52028 2468
edf66db1
SP
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.
d3b52028 2483
edf66db1 2484 * elf/dl-load.c: Don't add attribute_relro to max_dirnamelen.
d3b52028 2485
edf66db1 2486 * sysdeps/generic/inttypes.h: Fix PRI*FAST{16,32} macros.
d3b52028 2487
edf66db1 24882003-12-31 Bruno Haible <bruno@clisp.org>
d3b52028 2489
edf66db1
SP
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.
d3b52028 2496
edf66db1 24972004-01-19 Jakub Jelinek <jakub@redhat.com>
d3b52028 2498
edf66db1
SP
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.
d3b52028 2502
edf66db1 25032004-01-17 Ulrich Drepper <drepper@redhat.com>
d3b52028 2504
edf66db1
SP
2505 * sysdeps/i386/i486/bits/atomic.h (atomic_add): Fix test for using
2506 atomic_decrement. Patch by Davin McCall.
d3b52028 2507
edf66db1 25082004-01-13 Daniel Jacobowitz <drow@mvista.com>
d3b52028 2509
edf66db1
SP
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.
d3b52028 2518
edf66db1 25192004-01-16 Ulrich Drepper <drepper@redhat.com>
d3b52028 2520
edf66db1
SP
2521 * elf/elf.h: Define PT_IA_64_HP_OPT_ANOT, PT_IA_64_HP_HSL_ANOT, and
2522 PT_IA_64_HP_STACK.
d3b52028 2523
edf66db1 25242004-01-16 Richard Henderson <rth@redhat.com>
d3b52028 2525
edf66db1
SP
2526 * include/unistd.h (__libc_enable_secure): Mark attribute_relro.
2527 (__libc_enable_secure_internal): Likewise.
d3b52028 2528
edf66db1
SP
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.
d3b52028 2534
edf66db1 25352004-01-15 Ulrich Drepper <drepper@redhat.com>
d3b52028 2536
edf66db1 2537 * Versions.def: Add GLIBC_2.3.4.
d3b52028 2538
edf66db1 25392004-01-15 Richard Henderson <rth@redhat.com>
d3b52028 2540
edf66db1 2541 * sysdeps/unix/alpha/sysdep.h: Revert last change.
d3b52028 2542
edf66db1 25432004-01-15 Richard Henderson <rth@redhat.com>
d3b52028 2544
edf66db1 2545 * sysdeps/alpha/dl-machine.h (RTLD_START): Use _dl_argv_internal.
d3b52028 2546
edf66db1
SP
2547 * sysdeps/unix/alpha/sysdep.h [PIC] (SYSCALL_ERROR_HANDLER): Use
2548 !samegp relocation.
d3b52028 2549
edf66db1 25502004-01-15 Richard Henderson <rth@redhat.com>
d3b52028 2551
edf66db1
SP
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.
d3b52028 2559
edf66db1 25602004-01-15 Richard Henderson <rth@redhat.com>
d3b52028 2561
edf66db1
SP
2562 * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Prefix stubs with
2563 __syscall_, move nop inside, adjust users by +4.
d3b52028 2564
edf66db1 25652004-01-14 Steven Munroe <sjmunroe@us.ibm.com>
d3b52028 2566
edf66db1
SP
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.
d3b52028 2704
edf66db1 27052004-01-09 Bruno Haible <bruno@clisp.org>
d3b52028 2706
edf66db1
SP
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.
d3b52028 2710
edf66db1 27112004-01-11 Bruno Haible <bruno@clisp.org>
d3b52028 2712
edf66db1
SP
2713 * stdio-common/vfprintf.c (vfprintf): Disallow the 'I' flag after
2714 width or precision has been seen.
d3b52028 2715
edf66db1 27162004-01-08 Bruno Haible <bruno@clisp.org>
d3b52028 2717
edf66db1
SP
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.
d3b52028 2721
edf66db1 27222004-01-13 Ulrich Drepper <drepper@redhat.com>
d3b52028 2723
edf66db1
SP
2724 * configure.in: Rewrite test to give gcc to clean up after itself.
2725 Patch by Greg Schafer.
d3b52028 2726
edf66db1
SP
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.
d3b52028 2731
edf66db1 27322004-01-12 Paolo Bonzini <bonzini@gnu.org>
d3b52028 2733
edf66db1
SP
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.
d3b52028 2750
edf66db1 27512004-01-14 Jakub Jelinek <jakub@redhat.com>
d3b52028 2752
edf66db1
SP
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.
d3b52028 2759
edf66db1 27602004-01-13 Ulrich Drepper <drepper@redhat.com>
d3b52028 2761
edf66db1
SP
2762 * sysdeps/generic/dl-sysdep.c: Move __libc_enable_secure into
2763 .data.rel.ro.
d3b52028 2764
edf66db1 2765 * sysdeps/x86_64/dl-machine.h: Include <tls.h>.
d3b52028 2766
edf66db1
SP
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.
d3b52028 2774
edf66db1 27752004-01-13 Richard Henderson <rth@redhat.com>
d3b52028 2776
edf66db1 2777 * sysdeps/unix/sysv/linux/alpha/rt_sigaction.S: Fix typo.
d3b52028 2778
edf66db1 27792004-01-13 Ulrich Drepper <drepper@redhat.com>
d3b52028 2780
edf66db1
SP
2781 * sysdeps/unix/sysv/linux/dl-execstack.c
2782 (_dl_make_stack_executable): Move common code in front. Use
2783 __builtin_expect.
d3b52028 2784
edf66db1
SP
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.
d3b52028 3016
edf66db1 30172004-01-01 Paolo Bonzini <bonzini@gnu.org>
d3b52028 3018
edf66db1
SP
3019 * posix/regex_internal.h (re_dfastate_t): Fix size of the CONTEXT
3020 bitfield.
d3b52028 3021
edf66db1 3022 * posix/regex_internal.c (re_node_set_insert): Rewrite.
d3b52028 3023
edf66db1 30242004-01-01 Ulrich Drepper <drepper@redhat.com>
d3b52028 3025
edf66db1
SP
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.
d3b52028 3042
edf66db1 30432004-01-01 Petter Reinholdtsen <pere@hungry.com>
d3b52028 3044
edf66db1
SP
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 ]".
d3b52028 3049
edf66db1 30502004-01-01 Andreas Jaeger <aj@suse.de>
d3b52028 3051
edf66db1 3052 * resolv/Makefile (generated): New.
d3b52028 3053
edf66db1 30542003-12-31 Joseph S. Myers <jsm@polyomino.org.uk>
d3b52028 3055
edf66db1 3056 * CONFORMANCE: Update.
d3b52028 3057
edf66db1 30582003-12-30 Paul Eggert <eggert@twinsun.com>
d3b52028 3059
edf66db1
SP
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.
d3b52028 3065
edf66db1
SP
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.
d3b52028 3070
edf66db1
SP
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.
d3b52028 3076
edf66db1
SP
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.
d3b52028 3082
edf66db1
SP
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.
d3b52028 3092
edf66db1 30932003-12-31 Ulrich Drepper <drepper@redhat.com>
d3b52028 3094
edf66db1
SP
3095 * locale/setlocale.c (setlocale): Avoid duplicating locale names
3096 if we can reuse old strings.
d3b52028 3097
edf66db1
SP
3098 * inet/rcmd.c: Provide better error message in case of unknown
3099 host. Remove USE_IN_LIBIO.
d3b52028 3100
edf66db1
SP
3101 * nscd/nscd.init: Updated version, more conforming with current
3102 init file standards.
d3b52028 3103
edf66db1
SP
3104 * nscd/nscd-client.h (_PATH_NSCDPID): Move the file into
3105 /var/run/nscd directory.
3106 (_PATH_NSCDSOCKET): Likewise.
d3b52028 3107
edf66db1 3108 * test-skeleton.c (timeout_handler): Fix error message.
d3b52028 3109
edf66db1
SP
3110 * elf/dl-dst.h (DL_DST_REQUIRED): Avoid the complex operations if
3111 CNT == 0.
d3b52028 3112
edf66db1 31132003-12-30 Jakub Jelinek <jakub@redhat.com>
d3b52028 3114
edf66db1
SP
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.
d3b52028 3118
edf66db1
SP
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.
d3b52028 3122
edf66db1
SP
3123 * sunrpc/pmap_clnt.c (pmap_set): Do CLNT_DESTROY even if CLNT_CALL
3124 failed. Reported by Steve Grubb.
d3b52028 3125
edf66db1 31262003-12-29 Ulrich Drepper <drepper@redhat.com>
d3b52028 3127
edf66db1
SP
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.
d3b52028 3311
edf66db1 33122003-12-20 Ulrich Drepper <drepper@redhat.com>
d3b52028 3313
edf66db1 3314 * elf/rtld.c (dl_main): Optimize order of subexpressions in if().
d3b52028 3315
edf66db1 33162003-12-18 Ulrich Drepper <drepper@redhat.com>
d3b52028 3317
edf66db1
SP
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>.
d3b52028 3322
edf66db1 33232003-12-18 Carlos O'Donell <carlos@baldric.uwo.ca>
d3b52028 3324
edf66db1
SP
3325 * sysdeps/unix/sysv/linux/hppa/clone.S (__clone) [PIC]: Save PIC,
3326 reload PIC if we need to call __syscall_error, cleanup asm.
d3b52028 3327
edf66db1 33282003-12-17 Carlos O'Donell <carlos@baldric.uwo.ca>
d3b52028 3329
edf66db1
SP
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.
d3b52028 3343
edf66db1
SP
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.
d3b52028 3355
edf66db1 33562003-12-17 Jakub Jelinek <jakub@redhat.com>
d3b52028 3357
edf66db1
SP
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.
d3b52028 3364
edf66db1 33652003-12-17 Ulrich Drepper <drepper@redhat.com>
d3b52028 3366
edf66db1
SP
3367 * misc/mntent_r.c: Change encoding to match recently changed decoder.
3368 Patch by Alexander Achenbach <xela@slit.de>.
d3b52028 3369
edf66db1 33702003-12-16 Steven Munroe <sjmunroe@us.ibm.com>
d3b52028 3371
edf66db1
SP
3372 * sysdeps/unix/sysv/linux/powerpc/sys/ucontext.h: Correct definition of
3373 vrregset_t.
d3b52028 3374
edf66db1 33752003-12-16 Steven Munroe <sjmunroe@us.ibm.com>
d3b52028 3376
edf66db1
SP
3377 * sysdeps/unix/sysv/linux/powerpc/sys/procfs.h [!__PPC64_ELF_H]: Extend
3378 conditional to include typedef elf_vrreg_t.
d3b52028 3379
edf66db1 33802003-12-17 Paolo Bonzini <bonzini@gnu.org>
d3b52028 3381
edf66db1
SP
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.
d3b52028 3387
edf66db1 33882003-12-17 Andreas Jaeger <aj@suse.de>
d3b52028 3389
edf66db1
SP
3390 * sysdeps/generic/system.c (__libc_system): Fix typo, reported by
3391 Kevin Pedretti <pedretti@ieee.org>.
d3b52028 3392
edf66db1 33932003-12-17 Ulrich Drepper <drepper@redhat.com>
d3b52028 3394
edf66db1
SP
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.
d3b52028 3399
edf66db1 34002003-12-16 Petter Reinholdtsen <pere@hungry.com>
d3b52028 3401
edf66db1
SP
3402 * posix/regex_internal.h: Make sure the regex code compile
3403 with non-GCC compilers by hiding attributes.
d3b52028 3404
edf66db1
SP
34052003-12-16 Jakub Jelinek <jakub@redhat.com>
3406 Paolo Bonzini <bonzini@gnu.org>
d3b52028 3407
edf66db1
SP
3408 * posix/regexec.c (group_nodes_into_DFAstates): Never produce
3409 dests_ch items that are empty.
d3b52028 3410
edf66db1 34112003-12-14 Paolo Bonzini <bonzini@gnu.org>
d3b52028 3412
edf66db1 3413 * posix/regexec.c (check_arrival): Remove duplicate test.
d3b52028 3414
edf66db1 34152003-12-15 Ulrich Drepper <drepper@redhat.com>
d3b52028 3416
edf66db1
SP
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.
d3b52028 3421
edf66db1 34222003-12-14 Paolo Bonzini <bonzini@gnu.org>
d3b52028 3423
edf66db1
SP
3424 * posix/regex_internal.c (re_acquire_state_context):
3425 Compare the node sets after all the other comparisons.
d3b52028 3426
edf66db1 34272003-12-13 Paolo Bonzini <bonzini@gnu.org>
d3b52028 3428
edf66db1
SP
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.
d3b52028 3434
edf66db1 34352003-12-12 Andreas Jaeger <aj@suse.de>
d3b52028 3436
edf66db1
SP
3437 * sysdeps/unix/sysv/linux/x86_64/syscall.S: Pass also 6th argument
3438 to syscall.
d3b52028 3439
edf66db1 34402003-12-11 Ulrich Drepper <drepper@redhat.com>
d3b52028 3441
edf66db1
SP
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.
d3b52028 3446
edf66db1 34472003-12-11 Carlos O'Donell <carlos@baldric.uwo.ca>
d3b52028 3448
edf66db1
SP
3449 * sysdeps/generic/dl-fptr.c (COMPARE_AND_SWAP): Pass new and old
3450 in the right order.
d3b52028 3451
edf66db1 34522003-12-01 Jes Sorensen <jes@wildopensource.com>
d3b52028 3453
edf66db1
SP
3454 * rt/tst-clock.c (do_test): Print message when skipping
3455 CLOCK_PROCESS_CPUTIME_ID test.
d3b52028 3456
edf66db1
SP
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.
d3b52028 3459
edf66db1 34602003-12-02 David Mosberger <davidm@hpl.hp.com>
d3b52028 3461
edf66db1 3462 * sysdeps/ia64/elf/initfini.c: Add unwind info.
d3b52028 3463
edf66db1
SP
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.
d3b52028 3468
edf66db1
SP
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.
d3b52028 3473
edf66db1
SP
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.
d3b52028 3479
edf66db1 34802003-11-12 David Mosberger <davidm@hpl.hp.com>
d3b52028 3481
edf66db1
SP
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.
d3b52028 3486
edf66db1
SP
3487 * sysdeps/unix/sysv/linux/ia64/vfork.S: Use DO_CALL_VIA_BREAK()
3488 instead of DO_CALL().
d3b52028 3489
edf66db1
SP
3490 * sysdeps/unix/sysv/linux/ia64/clone2.S: Use break directly instead
3491 of DO_CALL().
d3b52028 3492
edf66db1
SP
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.
d3b52028 3497
edf66db1
SP
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.
d3b52028 3501
edf66db1
SP
35022003-12-10 Andreas Jaeger <aj@suse.de>
3503 Ruediger Oertel <ro@suse.de>
d3b52028 3504
edf66db1 3505 * sysdeps/alpha/fpu/e_sqrt.c: Mark sqrt_data as used.
d3b52028 3506
edf66db1 35072003-12-07 Ulrich Drepper <drepper@redhat.com>
d3b52028 3508
edf66db1
SP
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.
d3b52028 3516
edf66db1
SP
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.
d3b52028 3521
edf66db1
SP
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.
d3b52028 3571
edf66db1
SP
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.
d3b52028 3578
edf66db1 3579 * sysdeps/unix/sysv/linux/s390/s390-32/posix_fadvise64.c: New file.
d3b52028 3580
edf66db1
SP
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.
d3b52028 3585
edf66db1
SP
3586 * scripts/data/c++-types-s390-linux-gnu.data: New file.
3587 * scripts/data/c++-types-s390x-linux-gnu.data: New file.
d3b52028 3588
edf66db1 35892003-11-30 Petter Reinholdtsen <pere@hungry.com>
d3b52028 3590
edf66db1
SP
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.
d3b52028 3595
edf66db1 35962003-12-03 Jakub Jelinek <jakub@redhat.com>
d3b52028 3597
edf66db1
SP
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.
d3b52028 3605
edf66db1
SP
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.
d3b52028 3613
edf66db1 36142003-12-02 Jakub Jelinek <jakub@redhat.com>
d3b52028 3615
edf66db1 3616 * intl/locale.alias: Use nb_NO instead of no_NO for bokm.l.
d3b52028 3617
edf66db1
SP
3618 * sysdeps/powerpc/fpu/libm-test-ulps: Regenerated.
3619 * sysdeps/s390/fpu/libm-test-ulps: Regenerated.
d3b52028 3620
edf66db1 36212003-12-03 Ulrich Drepper <drepper@redhat.com>
d3b52028 3622
edf66db1
SP
3623 * locale/programs/locarchive.c (enlarge_archive): Print size info
3624 only in verbose mode.
d3b52028 3625
edf66db1 3626 * locale/iso-3166.def: Three letter code of Romania changed.
d3b52028 3627
edf66db1 36282003-12-02 Roland McGrath <roland@redhat.com>
d3b52028 3629
edf66db1
SP
3630 * scripts/config.sub: Update from master, timestamp='2003-10-20'.
3631 * scripts/config.guess: Update from master, timestamp='2003-10-20'.
d3b52028 3632
edf66db1 36332003-11-30 Andreas Jaeger <aj@suse.de>
d3b52028 3634
edf66db1 3635 * config.make.in (fno-unit-at-a-time): Define.
d3b52028 3636
edf66db1
SP
3637 * configure.in: Add test for -fno-unit-at-a-time.
3638 Fix text for -fpie.
d3b52028 3639
edf66db1
SP
3640 * csu/Makefile (CFLAGS-initfini.s): Add $(fno_unit_at_a_time).
3641 * locale/Makefile (CFLAGS-loadlocale.c): Likewise.
d3b52028 3642
edf66db1 36432003-12-01 Automatic
d3b52028 3644
edf66db1 3645 * version.h (VERSION): Bump to 2.3.3.
d3b52028 3646
edf66db1 36472003-11-30 Andreas Jaeger <aj@suse.de>
d3b52028 3648
edf66db1
SP
3649 * stdio-common/vfprintf.c: Do not inline buffered_vfprintf to
3650 decrease stack usage.
d3b52028 3651
edf66db1 36522003-11-30 Andreas Schwab <schwab@suse.de>
d3b52028 3653
edf66db1
SP
3654 * sysdeps/unix/sysv/linux/m68k/sysdep.h (PSEUDO_ERRVAL)
3655 (PSEUDO_END_ERRVAL, ret_ERRVAL): Define.
d3b52028 3656
edf66db1 36572003-11-29 Ulrich Drepper <drepper@redhat.com>
d3b52028 3658
edf66db1
SP
3659 * misc/mntent_r.c (decode_name): Be compatible with util-linux and
3660 recognize \134 as well.
d3b52028 3661
edf66db1 36622003-10-09 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 3663
edf66db1 3664 * sysdeps/ia64/fpu/fraiseexcpt.c: Don't include <asm/fpu.h>.
d3b52028 3665
edf66db1 36662003-10-08 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 3667
edf66db1
SP
3668 * sysdeps/unix/sysv/linux/ia64/bits/sigcontext.h: Don't include
3669 <asm/fpu.h>.
3670 (struct ia64_fpreg): New definition.
d3b52028 3671
edf66db1
SP
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.
d3b52028 3680
edf66db1 36812003-10-08 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 3682
edf66db1
SP
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.
d3b52028 3687
edf66db1 36882003-10-10 Simon Josefsson <jas@extundo.com>
d3b52028 3689
edf66db1
SP
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>
d3b52028 3821
edf66db1
SP
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.
d3b52028 3826
edf66db1 38272003-11-26 Andreas Jaeger <aj@suse.de>
d3b52028 3828
edf66db1
SP
3829 * sysdeps/unix/sysv/linux/dl-execstack.c
3830 (_dl_make_stack_executable): Set dl_stack_flags always for
3831 success.
d3b52028 3832
edf66db1 38332003-06-22 Petter Reinholdtsen <pere@hungry.com>
d3b52028 3834
edf66db1
SP
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.
d3b52028 3841
edf66db1 38422003-11-21 David Mosberger <davidm@hpl.hp.com>
d3b52028 3843
edf66db1
SP
3844 * elf/soinit.c (_fini): Put _fini() in .init_array section if
3845 HAVE_INITFINI_ARRAY is defined.
d3b52028 3846
edf66db1 38472003-11-25 Ulrich Drepper <drepper@redhat.com>
d3b52028 3848
edf66db1
SP
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.
d3b52028 3852
edf66db1 38532003-11-25 H.J. Lu <hongjiu.lu@intel.com>
d3b52028 3854
edf66db1
SP
3855 * sysdeps/i386/fpu/bits/mathinline.h (sqrt): Don't inline
3856 sqrt for gcc 3.3 and above.
d3b52028 3857
edf66db1 38582003-11-25 Ulrich Drepper <drepper@redhat.com>
d3b52028 3859
edf66db1
SP
3860 * posix/runptests.c (main): Make errors fatal.
3861 * posix/PTESTS: One test in GA135 and GA136 check functionality
3862 which seems not guaranteed.
d3b52028 3863
edf66db1 38642003-11-25 Jakub Jelinek <jakub@redhat.com>
d3b52028 3865
edf66db1
SP
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.
d3b52028 3877
edf66db1
SP
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.
d3b52028 3888
edf66db1 38892003-11-24 Jakub Jelinek <jakub@redhat.com>
d3b52028 3890
edf66db1
SP
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