Unroll x86-64 strlen
[glibc.git] / ChangeLog
blob6a1bd6a873fcb6a184e388c717d772c1593f0469
1 2010-08-26  H.J. Lu  <hongjiu.lu@intel.com>
3         * sysdeps/x86_64/strlen.S: Unroll the loop.
4         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
5         strlen-sse2 strlen-sse2-bsf.
6         * sysdeps/x86_64/multiarch/strlen.S ((strlen): Return
7         __strlen_no_bsf if bit_Slow_BSF is set.
8         (__strlen_sse42): Removed.
9         * sysdeps/x86_64/multiarch/strlen-no-bsf.S: New file.
10         * sysdeps/x86_64/multiarch/strlen-sse4.S: New file.
12 2010-08-25  Roland McGrath  <roland@redhat.com>
14         * sysdeps/x86_64/multiarch/varshift.S: File removed.
15         * sysdeps/x86_64/multiarch/varshift.c: New file.
16         * sysdeps/x86_64/multiarch/Makefile (CFLAGS-varshift.c): New variable.
17         * sysdeps/x86_64/multiarch/varshift.h: Clean up decls, fix a cast.
18         * sysdeps/x86_64/multiarch/memmove.c: Move decls around.
19         * sysdeps/x86_64/multiarch/memmove_chk.c: Likewise.
21 2010-08-25  H.J. Lu  <hongjiu.lu@intel.com>
23         * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
24         strlen-sse2 strlen-sse2-bsf.
25         * sysdeps/i386/i686/multiarch/strlen.S (strlen): Return
26         __strlen_sse2_bsf if bit_Slow_BSF is unset.
27         (__strlen_sse2): Removed.
28         * sysdeps/i386/i686/multiarch/strlen-sse2-bsf.S: New file.
29         * sysdeps/i386/i686/multiarch/strlen-sse2.S: New file.
30         * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features): Set
31         bit_Slow_BSF for Atom.
32         * sysdeps/x86_64/multiarch/init-arch.h (bit_Slow_BSF): Define.
33         (index_Slow_BSF): Define.
34         (HAS_SLOW_BSF): Define.
36 2010-08-25  Ulrich Drepper  <drepper@redhat.com>
38         [BZ #10851]
39         * resolv/res_init.c (__res_vinit): When no server address at all
40         is given default to loopback.
42 2010-08-24  Roland McGrath  <roland@redhat.com>
44         * configure.in: Remove config-name.h generation.
45         * configure: Regenerated.
46         * config-name.in: File removed.
47         * scripts/config-uname.sh: New file.
48         * posix/Makefile (uname.c): Depend on $(objdir)config-name.h.
49         ($(objdir)config-name.h): New target.
51         * sunrpc/rpc_parse.h: Avoid nested comment.
53 2010-08-24  Richard Henderson  <rth@redhat.com>
54             Ulrich Drepper  <drepper@redhat.com>
55             H.J. Lu  <hongjiu.lu@intel.com>
57         * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add varshift.
58         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Likewise.
59         * sysdeps/x86_64/multiarch/strcspn-c.c: Include "varshift.h".
60         Replace _mm_srli_si128 with __m128i_shift_right.  Replace
61         _mm_alignr_epi8 with _mm_loadu_si128.
62         * sysdeps/x86_64/multiarch/strspn-c.c: Likewise.
63         * sysdeps/x86_64/multiarch/strstr.c: Include "varshift.h".
64         (__m128i_shift_right): Removed.
65         * sysdeps/i386/i686/multiarch/varshift.h: New file.
66         * sysdeps/i386/i686/multiarch/varshift.S: New file.
67         * sysdeps/x86_64/multiarch/varshift.h: New file.
68         * sysdeps/x86_64/multiarch/varshift.S: New file.
70 2010-08-21  Mike Frysinger  <vapier@gentoo.org>
72         * configure.in: Move assembler checks to before sysdep dir checking.
74 2010-08-20  Petr Baudis  <pasky@suse.cz>
76         * LICENSES: Sync the sunrpc license.
78 2010-08-19  Ulrich Drepper  <drepper@redhat.com>
80         * sunrpc/auth_des.c: Update copyright notice once again.
81         * sunrpc/auth_none.c: Likewise.
82         * sunrpc/auth_unix.c: Likewise.
83         * sunrpc/authdes_prot.c: Likewise.
84         * sunrpc/authuxprot.c: Likewise.
85         * sunrpc/bindrsvprt.c: Likewise.
86         * sunrpc/clnt_gen.c: Likewise.
87         * sunrpc/clnt_perr.c: Likewise.
88         * sunrpc/clnt_raw.c: Likewise.
89         * sunrpc/clnt_simp.c: Likewise.
90         * sunrpc/clnt_tcp.c: Likewise.
91         * sunrpc/clnt_udp.c: Likewise.
92         * sunrpc/clnt_unix.c: Likewise.
93         * sunrpc/des_crypt.c: Likewise.
94         * sunrpc/des_soft.c: Likewise.
95         * sunrpc/get_myaddr.c: Likewise.
96         * sunrpc/getrpcport.c: Likewise.
97         * sunrpc/key_call.c: Likewise.
98         * sunrpc/key_prot.c: Likewise.
99         * sunrpc/openchild.c: Likewise.
100         * sunrpc/pm_getmaps.c: Likewise.
101         * sunrpc/pm_getport.c: Likewise.
102         * sunrpc/pmap_clnt.c: Likewise.
103         * sunrpc/pmap_prot.c: Likewise.
104         * sunrpc/pmap_prot2.c: Likewise.
105         * sunrpc/pmap_rmt.c: Likewise.
106         * sunrpc/rpc/auth.h: Likewise.
107         * sunrpc/rpc/auth_unix.h: Likewise.
108         * sunrpc/rpc/clnt.h: Likewise.
109         * sunrpc/rpc/des_crypt.h: Likewise.
110         * sunrpc/rpc/key_prot.h: Likewise.
111         * sunrpc/rpc/netdb.h: Likewise.
112         * sunrpc/rpc/pmap_clnt.h: Likewise.
113         * sunrpc/rpc/pmap_prot.h: Likewise.
114         * sunrpc/rpc/pmap_rmt.h: Likewise.
115         * sunrpc/rpc/rpc.h: Likewise.
116         * sunrpc/rpc/rpc_des.h: Likewise.
117         * sunrpc/rpc/rpc_msg.h: Likewise.
118         * sunrpc/rpc/svc.h: Likewise.
119         * sunrpc/rpc/svc_auth.h: Likewise.
120         * sunrpc/rpc/types.h: Likewise.
121         * sunrpc/rpc/xdr.h: Likewise.
122         * sunrpc/rpc_clntout.c: Likewise.
123         * sunrpc/rpc_cmsg.c: Likewise.
124         * sunrpc/rpc_common.c: Likewise.
125         * sunrpc/rpc_cout.c: Likewise.
126         * sunrpc/rpc_dtable.c: Likewise.
127         * sunrpc/rpc_hout.c: Likewise.
128         * sunrpc/rpc_main.c: Likewise.
129         * sunrpc/rpc_parse.c: Likewise.
130         * sunrpc/rpc_parse.h: Likewise.
131         * sunrpc/rpc_prot.c: Likewise.
132         * sunrpc/rpc_sample.c: Likewise.
133         * sunrpc/rpc_scan.c: Likewise.
134         * sunrpc/rpc_scan.h: Likewise.
135         * sunrpc/rpc_svcout.c: Likewise.
136         * sunrpc/rpc_tblout.c: Likewise.
137         * sunrpc/rpc_util.c: Likewise.
138         * sunrpc/rpc_util.h: Likewise.
139         * sunrpc/rpcinfo.c: Likewise.
140         * sunrpc/rpcsvc/bootparam_prot.x: Likewise.
141         * sunrpc/rpcsvc/key_prot.x: Likewise.
142         * sunrpc/rpcsvc/klm_prot.x: Likewise.
143         * sunrpc/rpcsvc/mount.x: Likewise.
144         * sunrpc/rpcsvc/nfs_prot.x: Likewise.
145         * sunrpc/rpcsvc/nlm_prot.x: Likewise.
146         * sunrpc/rpcsvc/rex.x: Likewise.
147         * sunrpc/rpcsvc/rstat.x: Likewise.
148         * sunrpc/rpcsvc/rusers.x: Likewise.
149         * sunrpc/rpcsvc/sm_inter.x: Likewise.
150         * sunrpc/rpcsvc/spray.x: Likewise.
151         * sunrpc/rpcsvc/yppasswd.x: Likewise.
152         * sunrpc/rtime.c: Likewise.
153         * sunrpc/svc.c: Likewise.
154         * sunrpc/svc_auth.c: Likewise.
155         * sunrpc/svc_authux.c: Likewise.
156         * sunrpc/svc_raw.c: Likewise.
157         * sunrpc/svc_run.c: Likewise.
158         * sunrpc/svc_simple.c: Likewise.
159         * sunrpc/svc_tcp.c: Likewise.
160         * sunrpc/svc_udp.c: Likewise.
161         * sunrpc/svc_unix.c: Likewise.
162         * sunrpc/svcauth_des.c: Likewise.
163         * sunrpc/xcrypt.c: Likewise.
164         * sunrpc/xdr.c: Likewise.
165         * sunrpc/xdr_array.c: Likewise.
166         * sunrpc/xdr_float.c: Likewise.
167         * sunrpc/xdr_mem.c: Likewise.
168         * sunrpc/xdr_rec.c: Likewise.
169         * sunrpc/xdr_ref.c: Likewise.
170         * sunrpc/xdr_sizeof.c: Likewise.
171         * sunrpc/xdr_stdio.c: Likewise.
173         * sysdeps/x86_64/multiarch/strcmp.S: Fix two typos in strncasecmp
174         handling.
176 2010-08-19  Andreas Schwab  <schwab@redhat.com>
178         * sysdeps/i386/i686/multiarch/strspn.S [!SHARED]: Fix SSE4.2 check.
180 2010-08-19  Luis Machado  <luisgpm@br.ibm.com>
182         * sysdeps/powerpc/powerpc32/power7/memchr.S: New file.
183         * sysdeps/powerpc/powerpc32/power7/memrchr.S: New file.
184         * sysdeps/powerpc/powerpc32/power7/rawmemchr.S: New file.
185         * sysdeps/powerpc/powerpc32/power7/strchr.S: New file.
186         * sysdeps/powerpc/powerpc32/power7/strchrnul.S: New file.
187         * sysdeps/powerpc/powerpc32/power7/strlen.S: New file.
188         * sysdeps/powerpc/powerpc32/power7/strnlen.S: New file.
189         * sysdeps/powerpc/powerpc64/power7/memchr.S: New file.
190         * sysdeps/powerpc/powerpc64/power7/memrchr.S: New file.
191         * sysdeps/powerpc/powerpc64/power7/rawmemchr.S: New file.
192         * sysdeps/powerpc/powerpc64/power7/strchr.S: New file.
193         * sysdeps/powerpc/powerpc64/power7/strchrnul.S: New file.
194         * sysdeps/powerpc/powerpc64/power7/strlen.S: New file.
195         * sysdeps/powerpc/powerpc64/power7/strnlen.S: New file.
197 2010-07-26  Anton Blanchard  <anton@samba.org>
199         * malloc/malloc.c (sYSTRIm): Replace divide and multiply with mask.
200         * malloc/arena.c (heap_trim): Likewise.
202 2010-08-16  Ulrich Drepper  <drepper@redhat.com>
204         * sysdeps/unix/sysv/linux/syscalls.list: Add entry for fanotify_init
205         here.  Not...
206         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: ...here...
207         * sysdeps/unix/sysv/linux/i386/syscalls.list: ... orhere.
209 2010-08-12  H.J. Lu  <hongjiu.lu@intel.com>
211         * sysdeps/i386/elf/Makefile: New file.
213 2010-08-14  Andreas Schwab  <schwab@linux-m68k.org>
215         * sysdeps/unix/sysv/linux/sys/fanotify.h: Remove third argument
216         from fanotify_init.
217         * sysdeps/unix/sysv/linux/i386/syscalls.list: Likewise.
218         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise.
220 2010-08-15  Ulrich Drepper  <drepper@redhat.com>
222         * sysdeps/x86_64/strcmp.S: Use correct register for fourth parameter
223         of strncasecmp_l.
224         * sysdeps/multiarch/strcmp.S: Likewise.
226 2010-08-14  Ulrich Drepper  <drepper@redhat.com>
228         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
229         strncase_l-nonascii.
230         * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines):
231         Add strncase_l-ssse3.
232         * sysdeps/x86_64/multiarch/strcmp.S: Prepare for use as strncasecmp.
233         * sysdeps/x86_64/strcmp.S: Likewise.
234         * sysdeps/x86_64/multiarch/strncase_l-ssse3.S: New file.
235         * sysdeps/x86_64/multiarch/strncase_l.S: New file.
236         * sysdeps/x86_64/strncase.S: New file.
237         * sysdeps/x86_64/strncase_l-nonascii.c: New file.
238         * sysdeps/x86_64/strncase_l.S: New file.
239         * string/Makefile (strop-tests): Add strncasecmp.
240         * string/test-strncasecmp.c: New file.
242         * sysdeps/x86_64/strcasecmp_l-nonascii.c: Add prototype to avoid
243         warning.
245         * sysdeps/x86_64/strcmp.S: Move definition of NO_NOLOCALE_ALIAS to...
246         * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: ... here.
248 2010-08-14  Andreas Schwab  <schwab@linux-m68k.org>
250         * sysdeps/unix/sysv/linux/prlimit.c: Make it compile.
252 2010-08-12  Ulrich Drepper  <drepper@redhat.com>
254         * sysdeps/unix/sysv/linux/bits/termios.h: Define EXTPROC.
255         * sysdeps/unix/sysv/linux/powerpc/bits/termios.h: Likewise.
256         * sysdeps/unix/sysv/linux/sparc/bits/termios.h: Likewise.
258 2010-05-01  Alan Modra  <amodra@gmail.com>
260         * sysdeps/powerpc/powerpc32/power4/memcmp.S: Correct cfi for r24.
261         * sysdeps/powerpc/powerpc64/bsd-_setjmp.S: Move contents..
262         * sysdeps/powerpc/powerpc64/bsd-setjmp.S: ..and these too..
263         * sysdeps/powerpc/powerpc64/setjmp.S: ..to here..
264         * sysdeps/powerpc/powerpc64/setjmp-common.S: ..and here, with some
265         tidying.  Don't tail-call __sigjmp_save for static lib.
266         * sysdeps/powerpc/powerpc64/sysdep.h (SAVE_ARG, REST_ARG): Correct
267         save location.
268         (CFI_SAVE_ARG, CFI_REST_ARG): New macros.
269         (CALL_MCOUNT): Add eh info, and nop after bl.
270         (TAIL_CALL_SYSCALL_ERROR): New macro.
271         (PSEUDO_RET): Use it.
272         * sysdeps/powerpc/powerpc64/dl-trampoline.S (_dl_runtime_resolve):
273         Correct save location of integer regs and cr.
274         (_dl_profile_resolve): Correct cr save location.  Delete nops
275         after bl when SHARED.  Reduce cfi size a little by better
276         placement of cfi directives.
277         * sysdeps/powerpc/powerpc64/fpu/s_copysign.S (__copysign): Don't
278         make a stack frame.  Instead use parm save area as a temp.
279         * sysdeps/unix/sysv/linux/powerpc/powerpc64/brk.S (__brk): Don't
280         make a stack frame.  Use TAIL_CALL_SYSCALL_ERROR.
281         * sysdeps/unix/sysv/linux/powerpc/powerpc64/clone.S (__clone):
282         Don't make a stack frame for parent, use parm save area.
283         Increase child stack frame to 112 bytes.  Don't save unused reg,
284         and adjust reg usage.  Set up cfi on error recovery and
285         epilogue of parent, and use TAIL_CALL_SYSCALL_ERROR, PSEUDO_RET.
286         * sysdeps/unix/sysv/linux/powerpc/powerpc64/makecontext.S
287         (__makecontext): Add dummy nop after jump to exit.
288         * sysdeps/unix/sysv/linux/powerpc/powerpc64/socket.S (__socket):
289         Use correct parm save area and cr save, reduce stack frame.
290         Correct cfi for possible PSEUDO_RET frame setup.
291         * sysdeps/unix/sysv/linux/powerpc/powerpc64/vfork.S (__vfork):
292         Branch to local label emitted by PSEUDO_RET rather than
293         __syscall_error.
295 2010-08-12  Andreas Schwab  <schwab@redhat.com>
297         [BZ #11904]
298         * locale/programs/locale.c (print_assignment): New function.
299         (show_locale_vars): Use it.
301 2010-08-11  Ulrich Drepper  <drepper@redhat.com>
303         * sysdeps/unix/sysv/linux/bits/statfs.h (struct statfs): Add f_flags
304         field.
305         (struct statfs64): Likewise.
306         (_STATFS_F_FLAGS): Define.
307         * sysdeps/unix/sysv/linux/s390/bits/statfs.h: Likewise.
308         * sysdeps/unix/sysv/linux/internal_statvfs.c (__statvfs_getflags):
309         Don't define if __ASSUME_STATFS_F_FLAGS is defined.
310         (ST_VALID): Define locally.
311         (INTERNAL_STATVFS): If f_flags has ST_VALID set don't call
312         __statvfs_getflags, use the provided value.
313         * sysdeps/unix/sysv/linux/kernel-features.h: Define
314         __ASSUME_STATFS_F_FLAGS.
316         * sysdeps/unix/sysv/linux/sys/inotify.h (IN_EXCL_UNLINK): Define.
318         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_headers):
319         Add sys/fanotify.h.
320         * sysdeps/unix/sysv/linux/Versions [libc]: Export fanotify_init and
321         fanotify_mask for GLIBC_2.13.
322         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entries for
323         fanotify_init and fanotify_mark.
324         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise.
325         * sysdeps/unix/sysv/linux/sys/fanotify.h: New file.
327         * sysdeps/unix/sysv/linux/Makefile [subdir=misc] (sysdep_routines):
328         Add prlimit.
329         * sysdeps/unix/sysv/linux/Versions [libc]: Export prlimit and
330         prlimit64 for GLIBC_2.13.
331         * sysdeps/unix/sysv/linux/bits/resource.h: Declare prlimit and
332         prlimit64.
333         * sysdeps/unix/sysv/linux/i386/syscalls.list: Add entry for prlimit64
334         syscall.
335         * sysdeps/unix/sysv/linux/powerpc/powerpc32/syscalls.list: Likewise.
336         * sysdeps/unix/sysv/linux/s390/s390-32/syscalls.list: Likewise.
337         * sysdeps/unix/sysv/linux/sh/syscalls.list: Likewise.
338         * sysdeps/unix/sysv/linux/sparc/sparc32/syscalls.lis: Likewise.
339         * sysdeps/unix/sysv/linux/wordsize-64/syscalls.list: Likewise.  Also
340         add prlimit alias.
341         * sysdeps/unix/sysv/linux/prlimit.c: New file.
343         [BZ #11903]
344         * sysdeps/generic/netinet/ip.h (IPTOS_CLASS): Fix definition.
345         Patch by Evgeni Bikov <bikovevg@iitp.ru>.
347         * nss/Makefile: Add rules to build and run tst-nss-test1.
348         * shlib-versions: Add entry for libnss_test1.
349         * nss/nss_test1.c: New file.
350         * nss/tst-nss-test1.c: New file.
352         * nss/nsswitch.c (__nss_database_custom): Define new variable.
353         (__nss_configure_lookup): Set appropriate entry in
354         __nss_configure_lookup to true.
355         * nss/nsswitch.h: Define enum with indeces of databases in
356         databases and __nss_database_custom arrays.  Declare
357         __nss_database_custom.
358         * grp/initgroups.c (internal_getgrouplist): Use __nss_database_custom
359         to avoid using nscd when custom rules are installed.
360         * nss/getXXbyYY_r.c: Likewise.
361         * sysdeps/posix/getaddrinfo.c (gaih_inet): Likewise.
363         * nss/nss_files/files-parse.c: Whitespace fixes.
365 2010-08-09  Ulrich Drepper  <drepper@redhat.com>
367         [BZ #11883]
368         * posix/fnmatch.c: Keep track of alloca use and fall back on malloc.
369         * posix/fnmatch_loop.c: Likewise.
371 2010-07-17  Andi Kleen  <ak@linux.intel.com>
373         * sysdeps/i386/i386-mcount.S (__fentry__): Define.
374         * sysdeps/x86_64/_mcount.S (__fentry__): Define.
375         * stdlib/Versions (__fentry__): Add for GLIBC 2.13
376         * Versions.def [GLIBC_2.13]: Add.
378 2010-08-06  Ulrich Drepper  <drepper@redhat.com>
380         * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid):
381         Also fail if tpwd after pwuid call is NULL.
383 2010-07-31  Samuel Thibault  <samuel.thibault@ens-lyon.org>
385         * hurd/hurdselect.c (_hurd_select): Round timeout up instead of down
386         when converting to ms.
388 2010-06-06  Samuel Thibault  <samuel.thibault@ens-lyon.org>
390         * sysdeps/mach/hurd/ttyname.c (ttyname): Replace MIG_BAD_ID and
391         EOPNOTSUPP errors with ENOTTY.
392         * sysdeps/mach/hurd/ttyname_r.c (__ttyname_r): Replace MIG_BAD_ID and
393         EOPNOTSUPP errors with ENOTTY.
395 2010-07-31  Ulrich Drepper  <drepper@redhat.com>
397         * sysdeps/x86_64/multiarch/Makefile [subdir=string] (sysdep_routines):
398         Add strcasecmp_l-ssse3.
399         * sysdeps/x86_64/multiarch/strcmp.S: Add support to compile for
400         strcasecmp.
401         * sysdeps/x86_64/strcmp.S: Allow more flexible compiling of strcasecmp.
402         * sysdeps/x86_64/multiarch/strcasecmp_l.S: New file.
403         * sysdeps/x86_64/multiarch/strcasecmp_l-ssse3.S: New file.
405 2010-07-30  Ulrich Drepper  <drepper@redhat.com>
407         * sysdeps/x86_64/multiarch/strcmp.S: Pretty printing.
409         * string/Makefile (strop-tests): Add strcasecmp.
410         * sysdeps/x86_64/Makefile [subdir=string] (sysdep_routines): Add
411         strcasecmp_l-nonascii.
412         (gen-as-const-headers): Add locale-defines.sym.
413         * sysdeps/x86_64/strcmp.S: Add support for strcasecmp implementation.
414         * sysdeps/x86_64/strcasecmp.S: New file.
415         * sysdeps/x86_64/strcasecmp_l.S: New file.
416         * sysdeps/x86_64/strcasecmp_l-nonascii.c: New file.
417         * sysdeps/x86_64/locale-defines.sym: New file.
418         * string/test-strcasecmp.c: New file.
420         * string/test-strcasestr.c: Test both ends of the range of characters.
421         * sysdeps/x86_64/multiarch/strstr.c: Fix UCHIGH definition.
423 2010-07-29  Roland McGrath  <roland@redhat.com>
425         [BZ #11856]
426         * manual/locale.texi (Yes-or-No Questions): Fix example code.
428 2010-07-27  Ulrich Drepper  <drepper@redhat.com>
430         * sysdeps/x86_64/multiarch/strcmp-ssse3.S: Avoid compiling the file
431         for ld.so.
433 2010-07-27  Andreas Schwab  <schwab@redhat.com>
435         * manual/memory.texi (Malloc Tunable Parameters): Document
436         M_PERTURB.
438 2010-07-26  Roland McGrath  <roland@redhat.com>
440         [BZ #11840]
441         * configure.in (-fgnu89-inline check): Set and substitute
442         gnu89_inline, not libc_cv_gnu89_inline.
443         * configure: Regenerated.
444         * config.make.in (gnu89-inline-CFLAGS): Use @gnu89_inline@.
446 2010-07-26  Ulrich Drepper  <drepper@redhat.com>
448         * string/test-strnlen.c: New file.
449         * string/Makefile (strop-tests): Add strnlen.
450         * string/tester.c (test_strnlen): Add a few more test cases.
451         * string/tst-strlen.c: Better error reporting.
453         * sysdeps/x86_64/strnlen.S: New file.
455 2010-07-24  Ulrich Drepper  <drepper@redhat.com>
457         * sysdeps/x86_64/multiarch/strstr.c (__m128i_strloadu_tolower): Use
458         lower-latency instructions.
460 2010-07-23  Ulrich Drepper  <drepper@redhat.com>
462         * string/test-strcasestr.c: New file.
463         * string/test-strstr.c: New file.
464         * string/Makefile (strop-tests): Add strstr and strcasestr.
465         * string/str-two-way.h: Don't undefine MAX.
466         * string/strcasestr.c: Don't define alias if NO_ALIAS is defined.
468 2010-07-21  Andreas Schwab  <schwab@redhat.com>
470         * sysdeps/i386/i686/multiarch/Makefile (sysdep_routines): Add
471         strcasestr-nonascii.
472         (CFLAGS-strcasestr-nonascii.c): Define.
473         * sysdeps/i386/i686/multiarch/strcasestr-nonascii.c: New file.
474         * sysdeps/x86_64/multiarch/strcasestr-nonascii.c (STRSTR_SSE42):
475         Remove unused attribute.
477 2010-07-20  Roland McGrath  <roland@redhat.com>
479         * elf/dl-sysdep.c (_dl_important_hwcaps): Add dsocaps mask to
480         dl_hwcap_mask as well as dl_hwcap.  Without this, dsocaps matching in
481         ld.so.cache was broken.  With it, there is no way to disable dsocaps
482         like LD_HWCAP_MASK can disable hwcaps.
484 2010-06-02  Emilio Pozuelo Monfort  <pochu27@gmail.com>
486         * sysdeps/mach/hurd/sendmsg.c (__libc_sendmsg): Fix memory leaks.
488 2010-07-16  Ulrich Drepper  <drepper@redhat.com>
490         * sysdeps/x86_64/multiarch/strstr.c: Rewrite to avoid indirect function
491         call in strcasestr.
492         * sysdeps/x86_64/multiarch/strcasestr.c: Declare
493         __strcasestr_sse42_nonascii.
494         * sysdeps/x86_64/multiarch/Makefile: Add rules to build
495         strcasestr-nonascii.c.
496         * sysdeps/x86_64/multiarch/strcasestr-nonascii.c: New file.
498 2010-06-15  Luis Machado  <luisgpm@br.ibm.com>
500         * sysdeps/powerpc/powerpc32/power6/fpu/s_copysign.S: New file.
501         * sysdeps/powerpc/powerpc32/power6/fpu/s_copysignf.S: New file.
502         * sysdeps/powerpc/powerpc64/power6/fpu/s_copysign.S: New file.
503         * sysdeps/powerpc/powerpc64/power6/fpu/s_copysignf.S: New file.
505 2010-07-09  Ulrich Drepper  <drepper@redhat.com>
507         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Use __fcntl not
508         fcntl.
510 2010-07-06  Andreas Schwab  <schwab@redhat.com>
512         * elf/dl-version.c (match_symbol): Don't pass NULL occation to
513         dl_signal_cerror.
515 2010-07-06  Ulrich Drepper  <drepper@redhat.com>
517         * sysdeps/unix/sysv/linux/fpathconf.c (__fpathconf): Implement
518         _PC_PIPE_BUF using F_GETPIPE_SZ.
520 2010-07-05  Roland McGrath  <roland@redhat.com>
522         * manual/arith.texi (Rounding Functions): Fix rint description
523         implicit in round description.
525 2010-07-02  Ulrich Drepper  <drepper@redhat.com>
527         * elf/Makefile: Fix linking for a few tests to make recent linker
528         happy.
530 2010-06-30  Andreas Schwab  <schwab@redhat.com>
532         * dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Readd
533         $(common-objpfx)libc_nonshared.a.
535 2010-06-21  Luis Machado  <luisgpm@br.ibm.com>
537         * sysdeps/powerpc/powerpc32/970/fpu/Implies: Remove.
538         * sysdeps/powerpc/powerpc32/power5/fpu/Implies: Remove.
539         * sysdeps/powerpc/powerpc32/power5+/fpu/Implies: Remove.
540         * sysdeps/powerpc/powerpc32/power6x/fpu/Implies: Remove.
541         * sysdeps/powerpc/powerpc64/970/fpu/Implies: Remove.
542         * sysdeps/powerpc/powerpc64/power5/fpu/Implies: Remove.
543         * sysdeps/powerpc/powerpc64/power5+/fpu/Implies: Remove.
544         * sysdeps/powerpc/powerpc64/power6x/fpu/Implies: Remove.
545         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/fpu/Implies: Remove.
546         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/fpu/Implies: Remove.
547         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/fpu/Implies: Remove.
548         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5+/fpu/Implies: Remove.
549         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/fpu/Implies: Remove.
550         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/fpu/Implies: Remove.
551         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/fpu/Implies: Remove.
552         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/fpu/Implies: Remove.
553         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/fpu/Implies: Remove.
554         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/fpu/Implies: Remove.
555         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5+/fpu/Implies: Remove.
556         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/fpu/Implies: Remove.
557         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/fpu/Implies: Remove.
558         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/fpu/Implies: Remove.
559         * sysdeps/powerpc/powerpc32/970/Implies: Point to power4.
560         * sysdeps/powerpc/powerpc32/power5/Implies: Point to power4.
561         * sysdeps/powerpc/powerpc32/power5+/Implies: Point to power5.
562         * sysdeps/powerpc/powerpc32/power6/Implies: Point to power5+.
563         * sysdeps/powerpc/powerpc32/power6x/Implies: Point to power6.
564         * sysdeps/powerpc/powerpc64/970/Implies: Point to power4.
565         * sysdeps/powerpc/powerpc64/power5/Implies: Point to power4.
566         * sysdeps/powerpc/powerpc64/power5+/Implies: Point to power5.
567         * sysdeps/powerpc/powerpc64/power6/Implies: Point to power5+.
568         * sysdeps/powerpc/powerpc64/power6x/Implies: Point to power6.
569         * sysdeps/powerpc/powerpc32/power7/Implies: New file.
570         * sysdeps/powerpc/powerpc64/power7/Implies: New file.
571         * sysdeps/unix/sysv/linux/powerpc/powerpc32/970/Implies: New file.
572         * sysdeps/unix/sysv/linux/powerpc/powerpc32/cell/Implies: New file.
573         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power4/Implies: New file.
574         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power5/Implies: New file.
575         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6/Implies: New file.
576         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power6x/Implies: New file.
577         * sysdeps/unix/sysv/linux/powerpc/powerpc32/power7/Implies: New file.
578         * sysdeps/unix/sysv/linux/powerpc/powerpc64/970/Implies: New file.
579         * sysdeps/unix/sysv/linux/powerpc/powerpc64/cell/Implies: New file.
580         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power4/Implies: New file.
581         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power5/Implies: New file.
582         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6/Implies: New file.
583         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power6x/Implies: New file.
584         * sysdeps/unix/sysv/linux/powerpc/powerpc64/power7/Implies: New file.
586 2010-06-25  H.J. Lu  <hongjiu.lu@intel.com>
588         * debug/memmove_chk.c (__memmove_chk): Renamed to ...
589         (MEMMOVE_CHK): ...this.  Default to __memmove_chk.
590         * string/memmove.c (memmove): Renamed to ...
591         (MEMMOVE): ...this.  Default to memmove.
592         * sysdeps/x86_64/memcpy.S: Use ENTRY_CHK and END_CHK.
593         * sysdeps/x86_64/sysdep.h (ENTRY_CHK): Define.
594         (END_CHK): Define.
595         * sysdeps/x86_64/multiarch/Makefile (sysdep_routines): Add
596         memcpy-ssse3 mempcpy-ssse3 memmove-ssse3 memcpy-ssse3-back
597         mempcpy-ssse3-back memmove-ssse3-back.
598         * sysdeps/x86_64/multiarch/bcopy.S: New file .
599         * sysdeps/x86_64/multiarch/memcpy-ssse3-back.S: New file.
600         * sysdeps/x86_64/multiarch/memcpy-ssse3.S: New file.
601         * sysdeps/x86_64/multiarch/memcpy.S: New file.
602         * sysdeps/x86_64/multiarch/memcpy_chk.S: New file.
603         * sysdeps/x86_64/multiarch/memmove-ssse3-back.S: New file.
604         * sysdeps/x86_64/multiarch/memmove-ssse3.S: New file.
605         * sysdeps/x86_64/multiarch/memmove.c: New file.
606         * sysdeps/x86_64/multiarch/memmove_chk.c: New file.
607         * sysdeps/x86_64/multiarch/mempcpy-ssse3-back.S: New file.
608         * sysdeps/x86_64/multiarch/mempcpy-ssse3.S: New file.
609         * sysdeps/x86_64/multiarch/mempcpy.S: New file.
610         * sysdeps/x86_64/multiarch/mempcpy_chk.S: New file.
611         * sysdeps/x86_64/multiarch/init-arch.h (bit_Fast_Copy_Backward):
612         Define.
613         (index_Fast_Copy_Backward): Define.
614         (HAS_ARCH_FEATURE): Define.
615         (HAS_FAST_REP_STRING): Define.
616         (HAS_FAST_COPY_BACKWARD): Define.
618 2010-06-21  Andreas Schwab  <schwab@redhat.com>
620         * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid):
621         Restore proper fallback handling.
623 2010-06-19  Ulrich Drepper  <drepper@redhat.com>
625         [BZ #11701]
626         * posix/group_member.c (__group_member): Correct checking loop.
628         * sysdeps/unix/sysv/linux/getlogin_r.c (__getlogin_r_loginuid): Handle
629         OOM in getpwuid_r correctly.  Return error number when the caller
630         should return, otherwise -1.
631         (getlogin_r): Adjust to return also for result of __getlogin_r_loginuid
632         call returning > 0 value.
633         * sysdeps/unix/sysv/linux/getlogin.c (getlogin): Likewise.
635 2010-06-07  Andreas Schwab  <schwab@redhat.com>
637         * dlfcn/Makefile: Remove explicit dependencies on libc.so and
638         libc_nonshared.a from targets in modules-names.
640 2010-06-02  Kirill A. Shutemov  <kirill@shutemov.name>
642         * elf/dl-reloc.c: Flush cache after solving TEXTRELs if arch
643         requires it.
645 2010-06-10  Luis Machado  <luisgpm@br.ibm.com>
647         * sysdeps/powerpc/powerpc32/power7/memcmp.S: New file
648         * sysdeps/powerpc/powerpc64/power7/memcmp.S: New file.
649         * sysdeps/powerpc/powerpc32/power7/strncmp.S: New file.
650         * sysdeps/powerpc/powerpc64/power7/strncmp.S: New file.
652 2010-06-02  Andreas Schwab  <schwab@redhat.com>
654         * nis/nss_nis/nis-initgroups.c (get_uid): Properly resize buffer.
656 2010-06-14  Ulrich Drepper  <drepper@redhat.com>
658         * sysdeps/unix/sysv/linux/powerpc/bits/fcntl.h: Define F_SETPIPE_SZ
659         and F_GETPIPE_SZ.
660         * sysdeps/unix/sysv/linux/i386/bits/fcntl.h: Likewise.
661         * sysdeps/unix/sysv/linux/x86_64/bits/fcntl.h: Likewise.
662         * sysdeps/unix/sysv/linux/s390/bits/fcntl.h: Likewise.
663         * sysdeps/unix/sysv/linux/sparc/bits/fcntl.h: Likewise.
664         * sysdeps/unix/sysv/linux/sh/bits/fcntl.h: Likewise.
665         * sysdeps/unix/sysv/linux/ia64/bits/fcntl.h: Likewise
667 2010-06-14  Roland McGrath  <roland@redhat.com>
669         * manual/libc.texinfo (@copying): Change to GFDL v1.3.
671 2010-06-07  Jakub Jelinek  <jakub@redhat.com>
673         * libio/stdio.h (sscanf, vsscanf): Use __REDIRECT_NTH instead of
674         __REDIRECT followed by __THROW.
675         * wcsmbs/wchar.h (swscanf, vswscanf): Likewise.
676         * posix/getopt.h (getopt): Likewise.
678 2010-06-02  Emilio Pozuelo Monfort  <pochu27@gmail.com>
680         * hurd/lookup-at.c (__file_name_lookup_at): Accept
681         AT_SYMLINK_FOLLOW in AT_FLAGS.  Fail with EINVAL if both
682         AT_SYMLINK_FOLLOW and AT_SYMLINK_NOFOLLOW are present
683         in AT_FLAGS.
684         * hurd/hurd/fd.h (__file_name_lookup_at): Update comment.
685         * sysdeps/mach/hurd/linkat.c (linkat): Pass O_NOLINK in FLAGS.
687 2010-05-28  Luis Machado  <luisgpm@br.ibm.com>
689         * sysdeps/powerpc/powerpc32/power7/memcpy.S: Exchange srdi for srwi.
691 2010-05-26  H.J. Lu  <hongjiu.lu@intel.com>
693         [BZ #11640]
694         * sysdeps/x86_64/multiarch/init-arch.c (__init_cpu_features):
695         Properly check family and model.
697 2010-05-26  Takashi Yoshii  <takashi.yoshii.zj@renesas.com>
699         * sysdeps/unix/sysv/linux/sh/sh4/register-dump.h: Fix iov[] size.
701 2010-05-24  Luis Machado  <luisgpm@br.ibm.com>
703         * sysdeps/powerpc/powerpc32/power7/memset.S: POWER7 32-bit memset fix.
705 2010-05-21  Ulrich Drepper  <drepper@redhat.com>
707         * elf/dl-runtime.c (_dl_profile_fixup): Don't crash on unresolved weak
708         symbol reference.
710 2010-05-19  Andreas Schwab  <schwab@redhat.com>
712         * elf/dl-runtime.c (_dl_fixup): Don't crash on unresolved weak
713         symbol reference.
715 2010-05-21  Andreas Schwab  <schwab@redhat.com>
717         * sysdeps/unix/sysv/linux/Makefile (sysdep_routines): Add recvmmsg
718         and internal_recvmmsg.
719         * sysdeps/unix/sysv/linux/recvmmsg.c: New file.
720         * sysdeps/unix/sysv/linux/internal_recvmmsg.S: New file.
721         * sysdeps/unix/sysv/linux/socketcall.h (SOCKOP_recvmmsg): Define.
722         * sysdeps/unix/sysv/linux/syscalls.list (recvmmsg): Remove.
724         * sunrpc/clnt_tcp.c (clnttcp_control): Add missing break.
725         * sunrpc/clnt_udp.c (clntudp_control): Likewise.
726         * sunrpc/clnt_unix.c (clntunix_control): Likewise.
728 2010-05-20  Andreas Schwab  <schwab@redhat.com>
730         * sysdeps/unix/sysv/linux/sys/timex.h: Use __REDIRECT_NTH.
732 2010-05-17  Luis Machado  <luisgpm@br.ibm.com>
734         POWER7 optimizations.
735         * sysdeps/powerpc/powerpc64/power7/memset.S: New file.
736         * sysdeps/powerpc/powerpc32/power7/memset.S: New file.
738 2010-05-19  Ulrich Drepper  <drepper@redhat.com>
740         * version.h: Update for 2.13 development version.
742 2010-05-12  Andrew Stubbs  <ams@codesourcery.com>
744         * sysdeps/sh/sh4/fpu/feholdexcpt.c (feholdexcept): Really disable all
745         exceptions.  Return 0.
747 2010-05-07  Roland McGrath  <roland@redhat.com>
749         * elf/ldconfig.c (main): Add a const.
751 2010-05-06  Ulrich Drepper  <drepper@redhat.com>
753         * nss/getent.c (idn_flags): Default to AI_IDN|AI_CANONIDN.
754         (args_options): Add no-idn option.
755         (ahosts_keys_int): Add idn_flags to ai_flags.
756         (parse_option): Handle 'i' option to clear idn_flags.
758         * malloc/malloc.c (_int_free): Possible race in the most recently
759         added check.  Only act on the data if no current modification
760         happened.
762 See ChangeLog.17 for earlier changes.