diff lib/memchr.c @ 9995:901b50b38fae

Remove intprops dependency. * modules/memchr (Depends-on): Remove intprops. * modules/memrchr (Depends-on): Likewise. * modules/memchr2 (Depends-on): Likewise. * lib/memchr.c (__memchr): Hand-inline the TYPE_MAXIMUM check. * lib/memrchr.c (__memrchr): Likewise. * lib/memrchr2.c (memchr2): Likewise. Reported by Simon Josefsson. Signed-off-by: Eric Blake <ebb9@byu.net>
author Eric Blake <ebb9@byu.net>
date Mon, 28 Apr 2008 10:24:14 -0600
parents 17bfa9870663
children e8d2c6fc33ad
line wrap: on
line diff
--- a/lib/memchr.c
+++ b/lib/memchr.c
@@ -45,8 +45,6 @@
 # define BP_SYM(sym) sym
 #endif
 
-#include "intprops.h"
-
 #undef __memchr
 #ifdef _LIBC
 # undef memchr
@@ -65,7 +63,7 @@
      performance.  On 64-bit hardware, unsigned long is generally 64
      bits already.  Change this typedef to experiment with
      performance.  */
-  typedef unsigned long longword;
+  typedef unsigned long int longword;
 
   const unsigned char *char_ptr;
   const longword *longword_ptr;
@@ -94,7 +92,7 @@
   repeated_one = 0x01010101;
   repeated_c = c | (c << 8);
   repeated_c |= repeated_c << 16;
-  if (0xffffffffU < TYPE_MAXIMUM (longword))
+  if (0xffffffffU < (longword) -1)
     {
       repeated_one |= repeated_one << 31 << 1;
       repeated_c |= repeated_c << 31 << 1;