Re: [PATCH] riscv: Fix toolchain vector detection

From: Alexandre Ghiti
Date: Mon Aug 26 2024 - 07:50:54 EST


Hi Anton,

On 19/08/2024 02:11, Anton Blanchard wrote:
A recent change to gcc flags rv64iv as no longer valid:

cc1: sorry, unimplemented: Currently the 'V' implementation
requires the 'M' extension

and as a result vector support is disabled. Fix this by adding m
to our toolchain vector detection code.

Signed-off-by: Anton Blanchard <antonb@xxxxxxxxxxxxxxx>
---
arch/riscv/Kconfig | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/arch/riscv/Kconfig b/arch/riscv/Kconfig
index 0f3cd7c3a436..939ea7f6a228 100644
--- a/arch/riscv/Kconfig
+++ b/arch/riscv/Kconfig
@@ -552,8 +552,8 @@ config RISCV_ISA_SVPBMT
config TOOLCHAIN_HAS_V
bool
default y
- depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64iv)
- depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32iv)
+ depends on !64BIT || $(cc-option,-mabi=lp64 -march=rv64imv)
+ depends on !32BIT || $(cc-option,-mabi=ilp32 -march=rv32imv)
depends on LLD_VERSION >= 140000 || LD_VERSION >= 23800
depends on AS_HAS_OPTION_ARCH


As Conor noted, we need to backport this to stable releases so here is a Fixes tag:

Fixes: fa8e7cce55da ("riscv: Enable Vector code to be built")

Thanks,

Alex