xen/bitops: Further reduce the #ifdef-ary in generic_hweight64()
authorAndrew Cooper <andrew.cooper3@citrix.com>
Tue, 4 Jun 2019 12:40:08 +0000 (13:40 +0100)
committerAndrew Cooper <andrew.cooper3@citrix.com>
Tue, 4 Jun 2019 13:43:51 +0000 (14:43 +0100)
This #ifdef-ary isn't necessary, and the logic can live in a plain if()

No functional change.

Signed-off-by: Andrew Cooper <andrew.cooper3@citrix.com>
Acked-by: Jan Beulich <jbeulich@suse.com>
xen/include/xen/bitops.h

index b512800dd9315b1e59e16dbe90069550c942d7c3..dfb70417c2f35b992194acc02b3d964c93a897c3 100644 (file)
@@ -184,10 +184,9 @@ static inline unsigned int generic_hweight8(unsigned int w)
 
 static inline unsigned int generic_hweight64(uint64_t w)
 {
-#if BITS_PER_LONG < 64
-    return generic_hweight32((unsigned int)(w >> 32)) +
-        generic_hweight32((unsigned int)w);
-#else
+    if ( BITS_PER_LONG < 64 )
+        return generic_hweight32(w >> 32) + generic_hweight32(w);
+
     w -= (w >> 1) & 0x5555555555555555ul;
     w =  (w & 0x3333333333333333ul) + ((w >> 2) & 0x3333333333333333ul);
     w =  (w + (w >> 4)) & 0x0f0f0f0f0f0f0f0ful;
@@ -199,7 +198,6 @@ static inline unsigned int generic_hweight64(uint64_t w)
     w += w >> 16;
 
     return (w + (w >> 32)) & 0xFF;
-#endif
 }
 
 static inline unsigned long hweight_long(unsigned long w)