X-Git-Url: http://erislabs.net/gitweb/?a=blobdiff_plain;ds=sidebyside;f=lib%2Fmemrchr.c;h=da93ca0ba52a2cd88ce0cf225a832ef14bf8c606;hb=31d3154399f8c679ba23afb0f6bef03b73d4c741;hp=2796dea3f5b4ce19c6e1225b5b51fdab75be590d;hpb=2c33678711c8d7ac62ddd06b4df234a0ccbb74a7;p=gnulib.git diff --git a/lib/memrchr.c b/lib/memrchr.c index 2796dea3f..da93ca0ba 100644 --- a/lib/memrchr.c +++ b/lib/memrchr.c @@ -32,8 +32,6 @@ #include #include -#include "intprops.h" - #undef __memrchr #ifdef _LIBC # undef memrchr @@ -52,7 +50,7 @@ __memrchr (void const *s, int c_in, size_t n) 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; @@ -81,7 +79,7 @@ __memrchr (void const *s, int c_in, size_t n) 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;