The branch main has been updated by kib:

URL: 
https://cgit.FreeBSD.org/src/commit/?id=96a685c229f2ce440591f98d33d36776e56dd55c

commit 96a685c229f2ce440591f98d33d36776e56dd55c
Author:     Konstantin Belousov <[email protected]>
AuthorDate: 2026-04-06 16:41:23 +0000
Commit:     Konstantin Belousov <[email protected]>
CommitDate: 2026-04-08 14:32:00 +0000

    lib/msun/aarch64: provide export file for arch-specific fenv methods
    
    Reported and tested by: fluffy
    Reviewed by:    emaste
    Fixes:  3a01e1e1a50cb9a9594aac2148dc920a6b295428
    Sponsored by:   The FreeBSD Foundation
    MFC after:      1 week
    Differential revision:  https://reviews.freebsd.org/D56283
---
 lib/msun/aarch64/Symbol.map | 10 ++++++++++
 lib/msun/aarch64/fenv.c     | 18 ++++++++++++++++++
 lib/msun/aarch64/fenv.h     | 14 +++++++++-----
 3 files changed, 37 insertions(+), 5 deletions(-)

diff --git a/lib/msun/aarch64/Symbol.map b/lib/msun/aarch64/Symbol.map
new file mode 100644
index 000000000000..b468c814ff06
--- /dev/null
+++ b/lib/msun/aarch64/Symbol.map
@@ -0,0 +1,10 @@
+FBSD_1.9 {
+       fesetexceptflag;
+       feraiseexcept;
+       fegetenv;
+       feholdexcept;
+       feupdateenv;
+       feenableexcept;
+       fedisableexcept;
+       fegetexcept;
+};
diff --git a/lib/msun/aarch64/fenv.c b/lib/msun/aarch64/fenv.c
index a428a9d8a271..3d7e467880c7 100644
--- a/lib/msun/aarch64/fenv.c
+++ b/lib/msun/aarch64/fenv.c
@@ -98,3 +98,21 @@ int
 {
        return (__feupdateenv_int(envp));
 }
+
+int
+(feenableexcept)(int mask)
+{
+       return (__feenableexcept_int(mask));
+}
+
+int
+(fedisableexcept)(int mask)
+{
+       return (__fedisableexcept_int(mask));
+}
+
+int
+(fegetexcept)(void)
+{
+       return (__fegetexcept_int());
+}
diff --git a/lib/msun/aarch64/fenv.h b/lib/msun/aarch64/fenv.h
index 32a03ee1eb49..5d47940cf9eb 100644
--- a/lib/msun/aarch64/fenv.h
+++ b/lib/msun/aarch64/fenv.h
@@ -92,6 +92,9 @@ int fegetenv(fenv_t *);
 int feholdexcept(fenv_t *);
 int fesetenv(const fenv_t *);
 int feupdateenv(const fenv_t *);
+int feenableexcept(int);
+int fedisableexcept(int);
+int fegetexcept(void);
 
 #define        feclearexcept(a)        __feclearexcept_int(a)
 #define        fegetexceptflag(e, a)   __fegetexceptflag_int(e, a)
@@ -104,6 +107,9 @@ int feupdateenv(const fenv_t *);
 #define        feholdexcept(e)         __feholdexcept_int(e)
 #define        fesetenv(e)             __fesetenv_int(e)
 #define        feupdateenv(e)          __feupdateenv_int(e)
+#define        feenableexcept(a)       __feenableexcept_int(a)
+#define        fedisableexcept(a)      __fedisableexcept_int(a)
+#define        fegetexcept()           __fegetexcept_int()
 
 __fenv_static inline int
 __feclearexcept_int(int __excepts)
@@ -233,10 +239,8 @@ __feupdateenv_int(const fenv_t *__envp)
 
 #if __BSD_VISIBLE
 
-/* We currently provide no external definitions of the functions below. */
-
 static inline int
-feenableexcept(int __mask)
+__feenableexcept_int(int __mask)
 {
        fenv_t __old_r, __new_r;
 
@@ -247,7 +251,7 @@ feenableexcept(int __mask)
 }
 
 static inline int
-fedisableexcept(int __mask)
+__fedisableexcept_int(int __mask)
 {
        fenv_t __old_r, __new_r;
 
@@ -258,7 +262,7 @@ fedisableexcept(int __mask)
 }
 
 static inline int
-fegetexcept(void)
+__fegetexcept_int(void)
 {
        fenv_t __r;
 

Reply via email to