diff options
author | Arnd Bergmann <arnd@arndb.de> | 2022-12-15 19:26:20 +0300 |
---|---|---|
committer | Arnd Bergmann <arnd@arndb.de> | 2022-12-19 18:46:50 +0300 |
commit | 6a7ee50f8f56dc181e1150cc101896053b02d220 (patch) | |
tree | 819e9132c94ca662bd636ff9c8bb7bdde4fc3c04 | |
parent | 4b88615950fc805690b92b46c8ab794beb4bd6aa (diff) | |
download | linux-6a7ee50f8f56dc181e1150cc101896053b02d220.tar.xz |
ARM: disallow pre-ARMv5 builds with ld.lld
lld cannot build for ARMv4/v4T targets because it inserts 'blx' instructions
that are unsupported there:
ld.lld: warning: lld uses blx instruction, no object with architecture supporting feature detected
Add a Kconfig time dependency to prevent those targets from being
selected in randconfig builds.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Nathan Chancellor <nathan@kernel.org>
Link: https://github.com/llvm/llvm-project/issues/50764
Link: https://github.com/ClangBuiltLinux/linux/issues/964
Link: https://lore.kernel.org/r/20221215162635.3750763-1-arnd@kernel.org
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
-rw-r--r-- | arch/arm/Kconfig | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index a08c9d092a33..349af9321334 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig @@ -342,12 +342,14 @@ comment "CPU Core family selection" config ARCH_MULTI_V4 bool "ARMv4 based platforms (FA526, StrongARM)" depends on !ARCH_MULTI_V6_V7 + depends on !LD_IS_LLD select ARCH_MULTI_V4_V5 select CPU_FA526 if !(CPU_SA110 || CPU_SA1100) config ARCH_MULTI_V4T bool "ARMv4T based platforms (ARM720T, ARM920T, ...)" depends on !ARCH_MULTI_V6_V7 + depends on !LD_IS_LLD select ARCH_MULTI_V4_V5 select CPU_ARM920T if !(CPU_ARM7TDMI || CPU_ARM720T || \ CPU_ARM740T || CPU_ARM9TDMI || CPU_ARM922T || \ |