From 081888286bcee495c4b9c3a9e45db6485c6bd367 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Fri, 16 Jan 2026 13:29:34 +0100 Subject: [PATCH] musl: patch riscv bits/fenv.h for soft float --- lib/libc/include/riscv32-linux-musl/bits/fenv.h | 7 ++++++- lib/libc/include/riscv64-linux-musl/bits/fenv.h | 7 ++++++- 2 files changed, 12 insertions(+), 2 deletions(-) diff --git a/lib/libc/include/riscv32-linux-musl/bits/fenv.h b/lib/libc/include/riscv32-linux-musl/bits/fenv.h index b260c6f63b..2c126e6bab 100644 --- a/lib/libc/include/riscv32-linux-musl/bits/fenv.h +++ b/lib/libc/include/riscv32-linux-musl/bits/fenv.h @@ -1,3 +1,7 @@ +#ifdef __riscv_float_abi_soft +#define FE_ALL_EXCEPT 0 +#define FE_TONEAREST 0 +#else #define FE_INVALID 16 #define FE_DIVBYZERO 8 #define FE_OVERFLOW 4 @@ -10,8 +14,9 @@ #define FE_DOWNWARD 2 #define FE_UPWARD 3 #define FE_TOWARDZERO 1 +#endif typedef unsigned int fexcept_t; typedef unsigned int fenv_t; -#define FE_DFL_ENV ((const fenv_t *) -1) \ No newline at end of file +#define FE_DFL_ENV ((const fenv_t *) -1) diff --git a/lib/libc/include/riscv64-linux-musl/bits/fenv.h b/lib/libc/include/riscv64-linux-musl/bits/fenv.h index b260c6f63b..2c126e6bab 100644 --- a/lib/libc/include/riscv64-linux-musl/bits/fenv.h +++ b/lib/libc/include/riscv64-linux-musl/bits/fenv.h @@ -1,3 +1,7 @@ +#ifdef __riscv_float_abi_soft +#define FE_ALL_EXCEPT 0 +#define FE_TONEAREST 0 +#else #define FE_INVALID 16 #define FE_DIVBYZERO 8 #define FE_OVERFLOW 4 @@ -10,8 +14,9 @@ #define FE_DOWNWARD 2 #define FE_UPWARD 3 #define FE_TOWARDZERO 1 +#endif typedef unsigned int fexcept_t; typedef unsigned int fenv_t; -#define FE_DFL_ENV ((const fenv_t *) -1) \ No newline at end of file +#define FE_DFL_ENV ((const fenv_t *) -1)