Make ARCH_HAS_FAST_MULTIPLIER a real config variable
authorLinus Torvalds <torvalds@linux-foundation.org>
Sat, 13 Sep 2014 18:14:53 +0000 (11:14 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Sat, 13 Sep 2014 18:14:53 +0000 (11:14 -0700)
commit72d931046030beb2d13dad6d205be0e228618432
tree2a1f26ae904f9476b4269ff0d9a677580d0c8c9b
parent186cec317e87b85b296713426fa39eaa41ec6056
Make ARCH_HAS_FAST_MULTIPLIER a real config variable

It used to be an ad-hoc hack defined by the x86 version of
<asm/bitops.h> that enabled a couple of library routines to know whether
an integer multiply is faster than repeated shifts and additions.

This just makes it use the real Kconfig system instead, and makes x86
(which was the only architecture that did this) select the option.

NOTE! Even for x86, this really is kind of wrong.  If we cared, we would
probably not enable this for builds optimized for netburst (P4), where
shifts-and-adds are generally faster than multiplies.  This patch does
*not* change that kind of logic, though, it is purely a syntactic change
with no code changes.

This was triggered by the fact that we have other places that really
want to know "do I want to expand multiples by constants by hand or
not", particularly the hash generation code.

Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
arch/x86/Kconfig
arch/x86/include/asm/bitops.h
lib/Kconfig
lib/hweight.c
lib/string.c