From a240e441dd3ebf9705d9edc9d6f35f48acdb0241 Mon Sep 17 00:00:00 2001 From: Jens Axboe Date: Mon, 21 Jan 2013 12:30:34 -0700 Subject: [PATCH] Use unsigned long long for the uint64_t type Signed-off-by: Jens Axboe --- lib/hweight.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/lib/hweight.c b/lib/hweight.c index bc9b51bc..2c819d6a 100644 --- a/lib/hweight.c +++ b/lib/hweight.c @@ -23,11 +23,11 @@ unsigned int hweight64(uint64_t w) #if BITS_PER_LONG == 32 return hweight32((unsigned int)(w >> 32)) + hweight32((unsigned int)w); #else - uint64_t res = w - ((w >> 1) & 0x5555555555555555ul); - res = (res & 0x3333333333333333ul) + ((res >> 2) & 0x3333333333333333ul); - res = (res + (res >> 4)) & 0x0F0F0F0F0F0F0F0Ful; + uint64_t res = w - ((w >> 1) & 0x5555555555555555ULL); + res = (res & 0x3333333333333333ULL) + ((res >> 2) & 0x3333333333333333ULL); + res = (res + (res >> 4)) & 0x0F0F0F0F0F0F0F0FULL; res = res + (res >> 8); res = res + (res >> 16); - return (res + (res >> 32)) & 0x00000000000000FFul; + return (res + (res >> 32)) & 0x00000000000000FFULL; #endif } -- 2.25.1