public inbox for glibc-cvs@sourceware.org
help / color / mirror / Atom feed
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2024-02-07 14:12 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2024-02-07 14:12 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=14e7cd5fe55a9c771ca3ec0ed6cc3ed76ed0a716
commit 14e7cd5fe55a9c771ca3ec0ed6cc3ed76ed0a716
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 97e4df863e..59caf4b7e6 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 38a8bdd0fe..672bf3cccf 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2024-04-17 20:12 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2024-04-17 20:12 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=fa7fa397d3090a4d7883439140d50ae1f6f8617b
commit fa7fa397d3090a4d7883439140d50ae1f6f8617b
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 97e4df863e..59caf4b7e6 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 38a8bdd0fe..672bf3cccf 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2024-04-02 15:59 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2024-04-02 15:59 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=379c03abaa9f2f52c791d5bf63508d70b2bb5bb2
commit 379c03abaa9f2f52c791d5bf63508d70b2bb5bb2
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 97e4df863e..59caf4b7e6 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 38a8bdd0fe..672bf3cccf 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2024-02-09 17:37 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2024-02-09 17:37 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=6f1330247e563be0752bb9c653fa6083a1a2334f
commit 6f1330247e563be0752bb9c653fa6083a1a2334f
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 97e4df863e..59caf4b7e6 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 38a8bdd0fe..672bf3cccf 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2024-01-29 18:02 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2024-01-29 18:02 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=1404734d15049fe9c68140ebef793073411cfaa1
commit 1404734d15049fe9c68140ebef793073411cfaa1
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 2512b784c5..919cc34056 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 38a8bdd0fe..672bf3cccf 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2023-12-21 18:59 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2023-12-21 18:59 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=76a61a4f7e1043cddc6c84cdcb1794d84c6fe34b
commit 76a61a4f7e1043cddc6c84cdcb1794d84c6fe34b
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 7a08a775ad..be1518cd4a 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 1fbc9dae0a..aedb0d844a 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2023-09-28 17:57 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2023-09-28 17:57 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=f6a8b87461328d3665f5ea9d074a6fb1ad60a5bf
commit f6a8b87461328d3665f5ea9d074a6fb1ad60a5bf
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 7a08a775ad..be1518cd4a 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 1fbc9dae0a..aedb0d844a 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2023-08-30 12:41 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2023-08-30 12:41 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5b60fb027ddc62d4e0c891396a0f16c2a8d48897
commit 5b60fb027ddc62d4e0c891396a0f16c2a8d48897
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 7a08a775ad..be1518cd4a 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 1fbc9dae0a..aedb0d844a 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2023-02-09 19:53 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2023-02-09 19:53 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=38ecba5e20c55919432c1253ba7be73807205969
commit 38ecba5e20c55919432c1253ba7be73807205969
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 512c7116f7..51fae7aff4 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index 1fbc9dae0a..aedb0d844a 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -352,7 +352,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-10-28 17:47 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-10-28 17:47 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=97c98382984f9faebb29e958431663cb5dcc9550
commit 97c98382984f9faebb29e958431663cb5dcc9550
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 179872d13e..82e484b777 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index f9655df0df..ac3e2b32aa 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-10-04 13:04 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-10-04 13:04 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=27761afb0d907970ee1c3a1e53ec72709b85d7c8
commit 27761afb0d907970ee1c3a1e53ec72709b85d7c8
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 179872d13e..82e484b777 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index f9655df0df..ac3e2b32aa 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-06-09 21:25 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-06-09 21:25 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7935a7d58067645cabfbbe85db22420beec1d2ca
commit 7935a7d58067645cabfbbe85db22420beec1d2ca
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-06-09 13:22 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-06-09 13:22 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=7935a7d58067645cabfbbe85db22420beec1d2ca
commit 7935a7d58067645cabfbbe85db22420beec1d2ca
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-06-03 14:11 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-06-03 14:11 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=058be0e09d35d1d70252be68c929917b86252f2c
commit 058be0e09d35d1d70252be68c929917b86252f2c
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-05-13 14:25 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-05-13 14:25 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=df07ff4ee49df0006a268e7e943bd35a4b54d2dd
commit df07ff4ee49df0006a268e7e943bd35a4b54d2dd
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-05-12 19:39 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-05-12 19:39 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=5ce909059f769f8fdc924b4dcd8a215aa81fb5f1
commit 5ce909059f769f8fdc924b4dcd8a215aa81fb5f1
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-05-10 18:29 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-05-10 18:29 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=e9dc9cf8732440668f4acb9e85d8a8a5359cf1a9
commit e9dc9cf8732440668f4acb9e85d8a8a5359cf1a9
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-04-29 14:09 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-04-29 14:09 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4b9ea31062a32cd5c7b4c5e2f679437f30b12a8f
commit 4b9ea31062a32cd5c7b4c5e2f679437f30b12a8f
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
* [glibc/azanella/clang] math: Do not use __builtin_isnan on clang
@ 2022-04-04 13:00 Adhemerval Zanella
0 siblings, 0 replies; 19+ messages in thread
From: Adhemerval Zanella @ 2022-04-04 13:00 UTC (permalink / raw)
To: glibc-cvs
https://sourceware.org/git/gitweb.cgi?p=glibc.git;h=4582f5d789942b05135af5a397e224e281e08af0
commit 4582f5d789942b05135af5a397e224e281e08af0
Author: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Date: Fri Apr 1 17:01:22 2022 -0300
math: Do not use __builtin_isnan on clang
It does not handle pseudo normal numbers.
Diff:
---
math/math.h | 3 +--
sysdeps/ieee754/float128/float128_private.h | 2 +-
sysdeps/ieee754/float128/s_isnanf128.c | 4 ++++
3 files changed, 6 insertions(+), 3 deletions(-)
diff --git a/math/math.h b/math/math.h
index 678102402c..8e64e2eb4f 100644
--- a/math/math.h
+++ b/math/math.h
@@ -1004,8 +1004,7 @@ enum
/* Return nonzero value if X is a NaN. We could use `fpclassify' but
we already have this functions `__isnan' and it is faster. */
-# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__) \
- || __glibc_clang_prereq (2,8)
+# if (__GNUC_PREREQ (4,4) && !defined __SUPPORT_SNAN__)
# define isnan(x) __builtin_isnan (x)
# else
# define isnan(x) __MATH_TG ((x), __isnan, (x))
diff --git a/sysdeps/ieee754/float128/float128_private.h b/sysdeps/ieee754/float128/float128_private.h
index a74462575c..895890e2ad 100644
--- a/sysdeps/ieee754/float128/float128_private.h
+++ b/sysdeps/ieee754/float128/float128_private.h
@@ -346,7 +346,7 @@
#define frexpl frexpf128
#define getpayloadl getpayloadf128
#define isinfl isinff128_do_not_use
-#define isnanl isnanf128_do_not_use
+#define isnanl isnanf128
#define ldexpl ldexpf128
#define llrintl llrintf128
#define llroundl llroundf128
diff --git a/sysdeps/ieee754/float128/s_isnanf128.c b/sysdeps/ieee754/float128/s_isnanf128.c
index 59f71533ce..b73a4e80d7 100644
--- a/sysdeps/ieee754/float128/s_isnanf128.c
+++ b/sysdeps/ieee754/float128/s_isnanf128.c
@@ -11,7 +11,11 @@
#include "../ldbl-128/s_isnanl.c"
#if !IS_IN (libm)
#include <float128-abi.h>
+#ifdef SHARED
hidden_ver (__isnanf128_impl, __isnanf128)
+#else
+strong_alias (__isnanf128_impl, __isnanf128)
+#endif
_weak_alias (__isnanf128_impl, isnanl)
versioned_symbol (libc, __isnanf128_impl, __isnanf128, GLIBC_2_34);
#if (SHLIB_COMPAT (libc, FLOAT128_VERSION_M, GLIBC_2_34))
^ permalink raw reply [flat|nested] 19+ messages in thread
end of thread, other threads:[~2024-04-17 20:12 UTC | newest]
Thread overview: 19+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-07 14:12 [glibc/azanella/clang] math: Do not use __builtin_isnan on clang Adhemerval Zanella
-- strict thread matches above, loose matches on Subject: below --
2024-04-17 20:12 Adhemerval Zanella
2024-04-02 15:59 Adhemerval Zanella
2024-02-09 17:37 Adhemerval Zanella
2024-01-29 18:02 Adhemerval Zanella
2023-12-21 18:59 Adhemerval Zanella
2023-09-28 17:57 Adhemerval Zanella
2023-08-30 12:41 Adhemerval Zanella
2023-02-09 19:53 Adhemerval Zanella
2022-10-28 17:47 Adhemerval Zanella
2022-10-04 13:04 Adhemerval Zanella
2022-06-09 21:25 Adhemerval Zanella
2022-06-09 13:22 Adhemerval Zanella
2022-06-03 14:11 Adhemerval Zanella
2022-05-13 14:25 Adhemerval Zanella
2022-05-12 19:39 Adhemerval Zanella
2022-05-10 18:29 Adhemerval Zanella
2022-04-29 14:09 Adhemerval Zanella
2022-04-04 13:00 Adhemerval Zanella
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).