diff options
author | Robin Murphy <robin.murphy@arm.com> | 2018-04-24 17:25:47 +0200 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2018-05-16 12:50:52 +0200 |
commit | e75bef2a4fe259b779765a85589e92657d26fdc9 (patch) | |
tree | dce158ed5840192161def2c998dd80f77307bb85 /arch | |
parent | arm64: Remove duplicate include (diff) | |
download | linux-e75bef2a4fe259b779765a85589e92657d26fdc9.tar.xz linux-e75bef2a4fe259b779765a85589e92657d26fdc9.zip |
arm64: Select ARCH_HAS_FAST_MULTIPLIER
It is probably safe to assume that all Armv8-A implementations have a
multiplier whose efficiency is comparable or better than a sequence of
three or so register-dependent arithmetic instructions. Select
ARCH_HAS_FAST_MULTIPLIER to get ever-so-slightly nicer codegen in the
few dusty old corners which care.
In a contrived benchmark calling hweight64() in a loop, this does indeed
turn out to be a small win overall, with no measurable impact on
Cortex-A57 but about 5% performance improvement on Cortex-A53.
Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm64/Kconfig | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index eb2cf4938f6d..9c850f3b398f 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -12,6 +12,7 @@ config ARM64 select ARCH_HAS_DEVMEM_IS_ALLOWED select ARCH_HAS_ACPI_TABLE_UPGRADE if ACPI select ARCH_HAS_ELF_RANDOMIZE + select ARCH_HAS_FAST_MULTIPLIER select ARCH_HAS_FORTIFY_SOURCE select ARCH_HAS_GCOV_PROFILE_ALL select ARCH_HAS_GIGANTIC_PAGE if (MEMORY_ISOLATION && COMPACTION) || CMA |