OSDN Git Service

simplify ffs* code
authorPeter S. Mazinger <ps.m@gmx.net>
Sun, 6 Mar 2011 16:08:38 +0000 (17:08 +0100)
committerPeter S. Mazinger <ps.m@gmx.net>
Sun, 6 Mar 2011 16:08:38 +0000 (17:08 +0100)
Remove __libc_ffs*, unneeded

Signed-off-by: Peter S. Mazinger <ps.m@gmx.net>
include/string.h
libc/inet/rpc/svc.c
libc/string/ffs.c
libc/string/ffsll.c

index 66f64e7..c71a85c 100644 (file)
@@ -374,6 +374,7 @@ extern char *rindex (__const char *__s, int __c)
 /* Return the position of the first bit set in I, or 0 if none are set.
    The least-significant bit is position 1, the most-significant 32.  */
 extern int ffs (int __i) __THROW __attribute__ ((__const__));
+libc_hidden_proto(ffs)
 
 /* The following two functions are non-standard but necessary for non-32 bit
    platforms.  */
@@ -385,13 +386,6 @@ __extension__ extern int ffsll (long long int __ll)
 #  endif
 # endif
 
-#ifdef _LIBC
-extern __typeof(ffs) __libc_ffs;
-libc_hidden_proto(__libc_ffs);
-extern __typeof(ffsll) __libc_ffsll;
-libc_hidden_proto(__libc_ffsll)
-#endif
-
 /* Compare S1 and S2, ignoring case.  */
 extern int strcasecmp (__const char *__s1, __const char *__s2)
      __THROW __attribute_pure__ __nonnull ((1, 2));
index 03b4062..b28485d 100644 (file)
@@ -41,6 +41,7 @@
 
 #include <errno.h>
 #include <unistd.h>
+#include <string.h>
 #include "rpc_private.h"
 #include <rpc/svc.h>
 #include <rpc/pmap_clnt.h>
@@ -452,7 +453,7 @@ svc_getreqset (fd_set *readfds)
   setsize = _rpc_dtablesize ();
   maskp = (u_int32_t *) readfds->fds_bits;
   for (sock = 0; sock < setsize; sock += 32)
-    for (mask = *maskp++; (bit = __libc_ffs (mask)); mask ^= (1 << (bit - 1)))
+    for (mask = *maskp++; (bit = ffs (mask)); mask ^= (1 << (bit - 1)))
       svc_getreq_common (sock + bit - 1);
 }
 libc_hidden_def(svc_getreqset)
index 4a5336d..f39d304 100644 (file)
@@ -6,11 +6,9 @@
  */
 
 #include <limits.h>
-#define ffsl __something_else
-#include "_string.h"
-#undef ffsl
+#include <string.h>
   
-int __libc_ffs(int i)
+int ffs(int i)
 {
 #if 1
        /* inlined binary search method */
@@ -51,8 +49,7 @@ int __libc_ffs(int i)
        return n;
 #endif
 }
-libc_hidden_def(__libc_ffs)
-weak_alias(__libc_ffs,ffs)
+libc_hidden_def(ffs)
 #if ULONG_MAX == UINT_MAX
-weak_alias (__libc_ffs, ffsl)
+strong_alias_untyped(ffs, ffsl)
 #endif
index 29e9ba9..a766290 100644 (file)
    02111-1307 USA.  */
 
 #include <limits.h>
-#define ffsl __something_else
-#include "_string.h"
-#undef ffsl
+#include <string.h>
 
 /* Find the first bit set in I.  */
-int __libc_ffsll (long long int i)
+int ffsll (long long int i)
 {
   unsigned long long int x = i & -i;
 
   if (x <= 0xffffffff)
-    return __libc_ffs (i);
+    return ffs (i);
   else
-    return 32 + __libc_ffs (i >> 32);
+    return 32 + ffs (i >> 32);
 }
-libc_hidden_def(__libc_ffsll)
 
-weak_alias (__libc_ffsll, ffsll)
 #if ULONG_MAX != UINT_MAX
-weak_alias (__libc_ffsll, ffsl)
+strong_alias_untyped(ffsll, ffsl)
 #endif