From c34ae92056f29f0843274c0cb4ea8c301f4b13e8 Mon Sep 17 00:00:00 2001 From: "David S. Miller" Date: Sun, 24 Jan 2016 21:14:12 -0800 Subject: Fix missing __sqrtl_finite symbol in libm on sparc 32-bit. * 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/sparc32/fpu/e_sqrtl.c | 29 ++++++++++++++++++++++++++++- sysdeps/sparc/sparc32/soft-fp/q_sqrt.c | 1 - 2 files changed, 28 insertions(+), 2 deletions(-) (limited to 'sysdeps/sparc') diff --git a/sysdeps/sparc/sparc32/fpu/e_sqrtl.c b/sysdeps/sparc/sparc32/fpu/e_sqrtl.c index 3c3acfee02..46ad8613b1 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 + . */ + +#include + +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 0eb43a28c0..999398e5df 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); -- cgit v1.2.3-70-g09d2