This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[COMMITTED PATCH] Fix missing __sqrtl_finite symbol in libm on sparc 32-bit.
- From: David Miller <davem at davemloft dot net>
- To: libc-alpha at sourceware dot org
- Date: Sun, 24 Jan 2016 21:15:45 -0800 (PST)
- Subject: [COMMITTED PATCH] Fix missing __sqrtl_finite symbol in libm on sparc 32-bit.
- Authentication-results: sourceware.org; auth=none
* sysdeps/sparc/sparc32/fpu/e_sqrtl.c: New file.
* sysdeps/sparc/sparc32/soft-fp/q_sqrt.c (__ieee754_sqrtl): Remove alias.
* sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Add __sqrtl_finite.
---
ChangeLog | 4 +++
sysdeps/sparc/sparc32/fpu/e_sqrtl.c | 29 +++++++++++++++++++++-
sysdeps/sparc/sparc32/soft-fp/q_sqrt.c | 1 -
sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 1 +
4 files changed, 33 insertions(+), 2 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 50f2880..6c21184 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,9 @@
2016-01-24 David S. Miller <davem@davemloft.net>
+ * sysdeps/sparc/sparc32/fpu/e_sqrtl.c: New file.
+ * sysdeps/sparc/sparc32/soft-fp/q_sqrt.c (__ieee754_sqrtl): Remove alias.
+ * sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Add __sqrtl_finite.
+
* sysdeps/sparc/fpu/libm-test-ulps: Update.
2016-01-25 Maciej W. Rozycki <macro@imgtec.com>
diff --git a/sysdeps/sparc/sparc32/fpu/e_sqrtl.c b/sysdeps/sparc/sparc32/fpu/e_sqrtl.c
index 3c3acfe..46ad861 100644
--- a/sysdeps/sparc/sparc32/fpu/e_sqrtl.c
+++ b/sysdeps/sparc/sparc32/fpu/e_sqrtl.c
@@ -1 +1,28 @@
-/* __ieee754_sqrtl is defined in q_sqrt.c. */
+/* Long double square root, sparc32 version.
+ Copyright (C) 2016 Free Software Foundation, Inc.
+ This file is part of the GNU C Library.
+
+ The GNU C Library is free software; you can redistribute it and/or
+ modify it under the terms of the GNU Lesser General Public
+ License as published by the Free Software Foundation; either
+ version 2.1 of the License, or (at your option) any later version.
+
+ The GNU C Library is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public
+ License along with the GNU C Library; if not, see
+ <http://www.gnu.org/licenses/>. */
+
+#include <math.h>
+
+extern long double _Q_sqrt(const long double a);
+
+long double
+__ieee754_sqrtl (long double x)
+{
+ return _Q_sqrt (x);
+}
+strong_alias (__ieee754_sqrtl, __sqrtl_finite)
diff --git a/sysdeps/sparc/sparc32/soft-fp/q_sqrt.c b/sysdeps/sparc/sparc32/soft-fp/q_sqrt.c
index 0eb43a2..999398e 100644
--- a/sysdeps/sparc/sparc32/soft-fp/q_sqrt.c
+++ b/sysdeps/sparc/sparc32/soft-fp/q_sqrt.c
@@ -35,4 +35,3 @@ long double _Q_sqrt(const long double a)
FP_HANDLE_EXCEPTIONS;
return c;
}
-strong_alias (_Q_sqrt, __ieee754_sqrtl);
diff --git a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
index d50ef4a..6b31a54 100644
--- a/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
+++ b/sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist
@@ -376,6 +376,7 @@ GLIBC_2.15 __sinhf_finite F
GLIBC_2.15 __sinhl_finite F
GLIBC_2.15 __sqrt_finite F
GLIBC_2.15 __sqrtf_finite F
+GLIBC_2.15 __sqrtl_finite F
GLIBC_2.15 __y0_finite F
GLIBC_2.15 __y0f_finite F
GLIBC_2.15 __y0l_finite F
--
2.1.2.532.g19b5d50