lkml.org 
[lkml]   [2010]   [May]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[tip:core/hweight] arch, hweight: Fix compilation errors
Commit-ID:  4677d4a53e0d565742277e8913e91c821453e63e
Gitweb: http://git.kernel.org/tip/4677d4a53e0d565742277e8913e91c821453e63e
Author: Borislav Petkov <borislav.petkov@amd.com>
AuthorDate: Mon, 3 May 2010 14:57:11 +0200
Committer: H. Peter Anvin <hpa@zytor.com>
CommitDate: Tue, 4 May 2010 10:25:27 -0700

arch, hweight: Fix compilation errors

Fix function prototype visibility issues when compiling for non-x86
architectures. Tested with crosstool
(ftp://ftp.kernel.org/pub/tools/crosstool/) with alpha, ia64 and sparc
targets.

Signed-off-by: Borislav Petkov <borislav.petkov@amd.com>
LKML-Reference: <20100503130736.GD26107@aftab>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
---
include/asm-generic/bitops/arch_hweight.h | 8 ++++----
include/linux/bitops.h | 5 +++++
2 files changed, 9 insertions(+), 4 deletions(-)
diff --git a/include/asm-generic/bitops/arch_hweight.h b/include/asm-generic/bitops/arch_hweight.h
index 9a81c1e..6a211f4 100644
--- a/include/asm-generic/bitops/arch_hweight.h
+++ b/include/asm-generic/bitops/arch_hweight.h
@@ -3,22 +3,22 @@

#include <asm/types.h>

-inline unsigned int __arch_hweight32(unsigned int w)
+static inline unsigned int __arch_hweight32(unsigned int w)
{
return __sw_hweight32(w);
}

-inline unsigned int __arch_hweight16(unsigned int w)
+static inline unsigned int __arch_hweight16(unsigned int w)
{
return __sw_hweight16(w);
}

-inline unsigned int __arch_hweight8(unsigned int w)
+static inline unsigned int __arch_hweight8(unsigned int w)
{
return __sw_hweight8(w);
}

-inline unsigned long __arch_hweight64(__u64 w)
+static inline unsigned long __arch_hweight64(__u64 w)
{
return __sw_hweight64(w);
}
diff --git a/include/linux/bitops.h b/include/linux/bitops.h
index c55d5bc..26caa60 100644
--- a/include/linux/bitops.h
+++ b/include/linux/bitops.h
@@ -10,6 +10,11 @@
#define BITS_TO_LONGS(nr) DIV_ROUND_UP(nr, BITS_PER_BYTE * sizeof(long))
#endif

+extern unsigned int __sw_hweight8(unsigned int w);
+extern unsigned int __sw_hweight16(unsigned int w);
+extern unsigned int __sw_hweight32(unsigned int w);
+extern unsigned long __sw_hweight64(__u64 w);
+
/*
* Include this here because some architectures need generic_ffs/fls in
* scope

\
 
 \ /
  Last update: 2010-05-04 19:31    [from the cache]
©2003-2011 Jasper Spaans