Messages in this thread Patch in this message |  | | From | Yury Norov <> | | Subject | [PATCH v2 1/5] arch: select HAVE_ARCH_BITREVERSE conditionally on BITREVERSE | | Date | Wed, 6 May 2026 13:52:02 -0400 |
| |
Architectures may have bit reversal instructions, but if the API not needed, the corresponding option should not be selected because it may lead to generating the unneeded code.
Signed-off-by: Yury Norov <ynorov@nvidia.com> --- arch/arm/Kconfig | 2 +- arch/arm64/Kconfig | 2 +- arch/loongarch/Kconfig | 2 +- arch/mips/Kconfig | 2 +- lib/Kconfig | 1 + 5 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 71fc5dd4123f..0e963e54fe06 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -83,7 +83,7 @@ config ARM select HARDIRQS_SW_RESEND select HAS_IOPORT select HAVE_ARCH_AUDITSYSCALL if AEABI && !OABI_COMPAT - select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6 + select HAVE_ARCH_BITREVERSE if (CPU_32v7M || CPU_32v7) && !CPU_32v6 && BITREVERSE select HAVE_ARCH_JUMP_LABEL if !XIP_KERNEL && !CPU_ENDIAN_BE32 && MMU && (!PREEMPT_RT || !SMP) select HAVE_ARCH_KFENCE if MMU && !XIP_KERNEL select HAVE_ARCH_KGDB if !CPU_ENDIAN_BE32 && MMU diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig index fe60738e5943..f5bb62c2ba9c 100644 --- a/arch/arm64/Kconfig +++ b/arch/arm64/Kconfig @@ -150,7 +150,7 @@ config ARM64 select HAVE_ACPI_APEI if (ACPI && EFI) select HAVE_ALIGNED_STRUCT_PAGE select HAVE_ARCH_AUDITSYSCALL - select HAVE_ARCH_BITREVERSE + select HAVE_ARCH_BITREVERSE if BITREVERSE select HAVE_ARCH_COMPILER_H select HAVE_ARCH_HUGE_VMALLOC select HAVE_ARCH_HUGE_VMAP diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig index 3b042dbb2c41..6c3444e31c0e 100644 --- a/arch/loongarch/Kconfig +++ b/arch/loongarch/Kconfig @@ -115,7 +115,7 @@ config LOONGARCH select HAS_IOPORT select HAVE_ALIGNED_STRUCT_PAGE if 64BIT select HAVE_ARCH_AUDITSYSCALL - select HAVE_ARCH_BITREVERSE if 64BIT + select HAVE_ARCH_BITREVERSE if 64BIT && BITREVERSE select HAVE_ARCH_JUMP_LABEL select HAVE_ARCH_JUMP_LABEL_RELATIVE select HAVE_ARCH_KASAN if 64BIT diff --git a/arch/mips/Kconfig b/arch/mips/Kconfig index 4364f3dba688..7e1494e0dbfa 100644 --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig @@ -2026,7 +2026,7 @@ config CPU_MIPSR6 default y if CPU_MIPS32_R6 || CPU_MIPS64_R6 select CPU_HAS_RIXI select CPU_HAS_DIEI if !CPU_DIEI_BROKEN - select HAVE_ARCH_BITREVERSE + select HAVE_ARCH_BITREVERSE if BITREVERSE select MIPS_ASID_BITS_VARIABLE select MIPS_SPRAM diff --git a/lib/Kconfig b/lib/Kconfig index 00a9509636c1..d8e7e89ae320 100644 --- a/lib/Kconfig +++ b/lib/Kconfig @@ -58,6 +58,7 @@ config BITREVERSE config HAVE_ARCH_BITREVERSE bool default n + depends on BITREVERSE help This option enables the use of hardware bit-reversal instructions on architectures which support such operations. -- 2.51.0
|  |