git: e09d209d1a74 - stable/13 - libm: Add feenableexcept and fedisableexcept to library on powerpc
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Thu, 24 Nov 2022 15:39:39 UTC
The branch stable/13 has been updated by jhibbits: URL: https://cgit.FreeBSD.org/src/commit/?id=e09d209d1a74a3caca95dea303db9bc605fce1a7 commit e09d209d1a74a3caca95dea303db9bc605fce1a7 Author: Justin Hibbits <jhibbits@FreeBSD.org> AuthorDate: 2022-05-13 22:18:25 +0000 Commit: Justin Hibbits <jhibbits@FreeBSD.org> CommitDate: 2022-11-24 15:42:09 +0000 libm: Add feenableexcept and fedisableexcept to library on powerpc Summary: These functions are missing from the library itself, and exist solely in the header. This breaks a few ports that expect libm to have the symbols in the library itself. Reviewers: imp, emaste, kib Reviewed By: kib Differential Revision: https://reviews.freebsd.org/D35204 (cherry picked from commit 448c505c33cc334193590f3844406d6a74f26e2a) --- lib/msun/powerpc/Symbol.map | 5 +++++ lib/msun/powerpc/fenv.c | 2 ++ lib/msun/powerpc/fenv.h | 7 +++---- 3 files changed, 10 insertions(+), 4 deletions(-) diff --git a/lib/msun/powerpc/Symbol.map b/lib/msun/powerpc/Symbol.map index 971112e30c8a..47eca6f99f31 100644 --- a/lib/msun/powerpc/Symbol.map +++ b/lib/msun/powerpc/Symbol.map @@ -11,3 +11,8 @@ FBSD_1.3 { feholdexcept; feupdateenv; }; + +FBSD_1.7 { + feenableexcept; + fedisableexcept; +}; diff --git a/lib/msun/powerpc/fenv.c b/lib/msun/powerpc/fenv.c index 7f7d98515995..f33493a5df2b 100644 --- a/lib/msun/powerpc/fenv.c +++ b/lib/msun/powerpc/fenv.c @@ -54,6 +54,8 @@ extern inline int fegetenv(fenv_t *__envp); extern inline int feholdexcept(fenv_t *__envp); extern inline int fesetenv(const fenv_t *__envp); extern inline int feupdateenv(const fenv_t *__envp); +extern inline int feenableexcept(int __mask); +extern inline int fedisableexcept(int __mask); #ifdef __SPE__ #define PMAX 0x7f7fffff diff --git a/lib/msun/powerpc/fenv.h b/lib/msun/powerpc/fenv.h index 21a70df3d104..83ba6b356af5 100644 --- a/lib/msun/powerpc/fenv.h +++ b/lib/msun/powerpc/fenv.h @@ -264,9 +264,7 @@ feupdateenv(const fenv_t *__envp) #if __BSD_VISIBLE -/* We currently provide no external definitions of the functions below. */ - -static inline int +__fenv_static inline int feenableexcept(int __mask) { union __fpscr __r; @@ -279,7 +277,7 @@ feenableexcept(int __mask) return ((__oldmask & _ENABLE_MASK) << _FPUSW_SHIFT); } -static inline int +__fenv_static inline int fedisableexcept(int __mask) { union __fpscr __r; @@ -292,6 +290,7 @@ fedisableexcept(int __mask) return ((__oldmask & _ENABLE_MASK) << _FPUSW_SHIFT); } +/* We currently provide no external definition of fegetexcept(). */ static inline int fegetexcept(void) {