From 758b215383cde2389bc73d4483e6d3202bdc6520 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Thu, 1 Apr 2004 23:29:52 +0000 Subject: [PATCH] Update. * include/string.h: Add libc_hidden_builtin_proto for memcmp. * sysdeps/generic/memcmp.c: Add libc_hidden_builtin_def. * sysdeps/i386/memcmp.S: Likewise. * sysdeps/i386/i686/memcmp.S: Likewise. * sysdeps/ia64/memcmp.S: Likewise. * sysdeps/sparc/sparc64/memcmp.S: Likewise. * sysdeps/unix/sysv/linux/sigprocmask.c: Include . --- ChangeLog | 9 +++++++++ include/string.h | 1 + sysdeps/generic/memcmp.c | 5 +++-- sysdeps/i386/i686/memcmp.S | 1 + sysdeps/i386/memcmp.S | 3 ++- sysdeps/ia64/memcmp.S | 7 ++++--- sysdeps/sparc/sparc64/memcmp.S | 7 ++++--- sysdeps/unix/sysv/linux/sigprocmask.c | 3 ++- 8 files changed, 26 insertions(+), 10 deletions(-) diff --git a/ChangeLog b/ChangeLog index a908f22..0ca0ae4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2004-04-01 Ulrich Drepper + * include/string.h: Add libc_hidden_builtin_proto for memcmp. + * sysdeps/generic/memcmp.c: Add libc_hidden_builtin_def. + * sysdeps/i386/memcmp.S: Likewise. + * sysdeps/i386/i686/memcmp.S: Likewise. + * sysdeps/ia64/memcmp.S: Likewise. + * sysdeps/sparc/sparc64/memcmp.S: Likewise. + + * sysdeps/unix/sysv/linux/sigprocmask.c: Include . + * time/difftime.c (__difftime): New renamed. Make old name alias. Use __difftime in recursive call. diff --git a/include/string.h b/include/string.h index 42d9362..2cd5b25 100644 --- a/include/string.h +++ b/include/string.h @@ -83,6 +83,7 @@ libc_hidden_proto (__strxfrm_l) libc_hidden_builtin_proto (memchr) libc_hidden_builtin_proto (memcpy) +libc_hidden_builtin_proto (memcmp) libc_hidden_builtin_proto (memmove) libc_hidden_builtin_proto (memset) libc_hidden_builtin_proto (strcat) diff --git a/sysdeps/generic/memcmp.c b/sysdeps/generic/memcmp.c index 7135a2c..212098a 100644 --- a/sysdeps/generic/memcmp.c +++ b/sysdeps/generic/memcmp.c @@ -1,4 +1,5 @@ -/* Copyright (C) 1991,1993,1995,1997,1998,2003 Free Software Foundation, Inc. +/* Copyright (C) 1991,1993,1995,1997,1998,2003,2004 + Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Torbjorn Granlund (tege@sics.se). @@ -381,7 +382,7 @@ memcmp (s1, s2, len) return 0; } - +libc_hidden_builtin_def(memcmp) #ifdef weak_alias # undef bcmp weak_alias (memcmp, bcmp) diff --git a/sysdeps/i386/i686/memcmp.S b/sysdeps/i386/i686/memcmp.S index f382e80..ef57acd 100644 --- a/sysdeps/i386/i686/memcmp.S +++ b/sysdeps/i386/i686/memcmp.S @@ -391,3 +391,4 @@ END (BP_SYM (memcmp)) #undef bcmp weak_alias (BP_SYM (memcmp), BP_SYM (bcmp)) +libc_hidden_builtin_def (BP_SYM (memcmp)) diff --git a/sysdeps/i386/memcmp.S b/sysdeps/i386/memcmp.S index c38c372..a795911 100644 --- a/sysdeps/i386/memcmp.S +++ b/sysdeps/i386/memcmp.S @@ -1,5 +1,5 @@ /* Compare two memory blocks for differences in the first COUNT bytes. - Copyright (C) 1995, 1996, 1997, 2000 Free Software Foundation, Inc. + Copyright (C) 1995, 1996, 1997, 2000, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -73,3 +73,4 @@ END (BP_SYM (memcmp)) #undef bcmp weak_alias (BP_SYM (memcmp), BP_SYM (bcmp)) +libc_hidden_builtin_def (BP_SYM (memcmp)) diff --git a/sysdeps/ia64/memcmp.S b/sysdeps/ia64/memcmp.S index 6de6d15..c3f21b9 100644 --- a/sysdeps/ia64/memcmp.S +++ b/sysdeps/ia64/memcmp.S @@ -1,6 +1,6 @@ /* Optimized version of the standard memcmp() function. This file is part of the GNU C Library. - Copyright (C) 2000, 2001 Free Software Foundation, Inc. + Copyright (C) 2000, 2001, 2004 Free Software Foundation, Inc. Contributed by Dan Pop . The GNU C Library is free software; you can redistribute it and/or @@ -88,7 +88,7 @@ ENTRY(memcmp) ;; cmp.ne p6, p0 = value1, value2 (p6) br.cond.spnt .done - br.cloop.dptk .l1 + br.cloop.dptk .l1 .dest_aligned: and sh1 = 7, src // sh1 = src % 8 and tmp = -8, len // tmp = len & -OPSIZ @@ -109,7 +109,7 @@ ENTRY(memcmp) // We enter this loop with p6 cleared by the above comparison -.l2: +.l2: (p[0]) ld8 r[0] = [asrc], 8 // r[0] = w1 (p[0]) ld8 q[0] = [dest], 8 (p[MEMLAT]) shr.u tmp1[0] = r[1 + MEMLAT], sh1 // tmp1 = w0 >> sh1 @@ -162,3 +162,4 @@ ENTRY(memcmp) END(memcmp) weak_alias (memcmp, bcmp) +libc_hidden_builtin_def (BP_SYM (memcmp)) diff --git a/sysdeps/sparc/sparc64/memcmp.S b/sysdeps/sparc/sparc64/memcmp.S index 176e26d..dbc9921 100644 --- a/sysdeps/sparc/sparc64/memcmp.S +++ b/sysdeps/sparc/sparc64/memcmp.S @@ -1,6 +1,6 @@ /* Compare two memory blocks for differences in the first COUNT bytes. For SPARC v9. - Copyright (C) 1998,1999 Free Software Foundation, Inc. + Copyright (C) 1998,1999, 2004 Free Software Foundation, Inc. This file is part of the GNU C Library. Contributed by Jan Vondrak and Jakub Jelinek . @@ -49,7 +49,7 @@ ENTRY(memcmp) ldx [%o0 + %o1], %g2 /* Load Group */ add %o0, 8, %o0 /* IEU0 */ -2: mov %g1, %o3 /* IEU0 Group */ +2: mov %g1, %o3 /* IEU0 Group */ subcc %o2, 8, %o2 /* IEU1 */ bl,pn %XCC, 5f /* CTI */ @@ -122,7 +122,7 @@ ENTRY(memcmp) 11: sllx %g4, %g2, %o4 /* IEU0 Group */ ldxa [%o0 + %o1] ASI_PNF, %g4 /* Load */ srlx %g4, %g3, %o5 /* IEU0 Group */ - mov %g5, %o3 /* IEU1 */ + mov %g5, %o3 /* IEU1 */ ldxa [%o0] ASI_PNF, %g5 /* Load */ subcc %o2, 8, %o2 /* IEU1 Group */ @@ -140,3 +140,4 @@ END(memcmp) #undef bcmp weak_alias(memcmp, bcmp) +libc_hidden_builtin_def (BP_SYM (memcmp)) diff --git a/sysdeps/unix/sysv/linux/sigprocmask.c b/sysdeps/unix/sysv/linux/sigprocmask.c index 7c4e4c6..e1b5756 100644 --- a/sysdeps/unix/sysv/linux/sigprocmask.c +++ b/sysdeps/unix/sysv/linux/sigprocmask.c @@ -1,4 +1,4 @@ -/* Copyright (C) 1997,1998,1999,2000,2001,2003 Free Software Foundation, Inc. +/* Copyright (C) 1997-2001,2003,2004 Free Software Foundation, Inc. This file is part of the GNU C Library. The GNU C Library is free software; you can redistribute it and/or @@ -18,6 +18,7 @@ #include #include +#include /* Neede for string function builtin redirection. */ #include #include -- 2.7.4