Commit 2cce9059 authored by Xi Ruoyao's avatar Xi Ruoyao Committed by Huacai Chen

LoongArch: Select ARCH_HAS_FAST_MULTIPLIER

LA464 and LA664 can do 32-bit/64-bit integer multiplication with a
latency of 4 cycles and a throughput of 2 ops per cycle.  It is
comparable to the mainstream x86 and arm64 cores, so we can select
ARCH_HAS_FAST_MULTIPLIER like them.

It speeds up __sw_hweight32() in lib/hweight.c for about 14% on LA464
and 11% on LA664, while __sw_hweight64() for about 30% on LA464 and 33%
on LA664.
Signed-off-by: default avatarXi Ruoyao <xry111@xry111.site>
Signed-off-by: default avatarHuacai Chen <chenhuacai@loongson.cn>
parent a38297e3
...@@ -16,6 +16,7 @@ config LOONGARCH ...@@ -16,6 +16,7 @@ config LOONGARCH
select ARCH_HAS_ACPI_TABLE_UPGRADE if ACPI select ARCH_HAS_ACPI_TABLE_UPGRADE if ACPI
select ARCH_HAS_CPU_FINALIZE_INIT select ARCH_HAS_CPU_FINALIZE_INIT
select ARCH_HAS_CURRENT_STACK_POINTER select ARCH_HAS_CURRENT_STACK_POINTER
select ARCH_HAS_FAST_MULTIPLIER
select ARCH_HAS_FORTIFY_SOURCE select ARCH_HAS_FORTIFY_SOURCE
select ARCH_HAS_KCOV select ARCH_HAS_KCOV
select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS select ARCH_HAS_NMI_SAFE_THIS_CPU_OPS
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment