This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Use libm_alias_ldouble in sysdeps/i386/fpu [committed]


This patch continues the preparation for additional _FloatN / _FloatNx
function aliases by using libm_alias_ldouble for sysdeps/i386/fpu long
double functions, so that they can have _Float64x aliases added in
future.

Tested for x86_64 (which includes some of these implementations) and
x86, including build-many-glibcs.py tests that installed stripped
shared libraries are unchanged by the patch.  Committed.

2017-11-17  Joseph Myers  <joseph@codesourcery.com>

	* sysdeps/i386/fpu/e_expl.S: Include <libm-alias-ldouble.h>.
	[USE_AS_EXPM1L] (expm1l): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_asinhl.S: Include <libm-alias-ldouble.h>.
	(asinhl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_atanl.c: Include <libm-alias-ldouble.h>.
	(atanl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_cbrtl.S: Include <libm-alias-ldouble.h>.
	(cbrtl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_ceill.S: Include <libm-alias-ldouble.h>.
	(ceill): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_copysignl.S: Include <libm-alias-ldouble.h>.
	(copysignl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_fabsl.S: Include <libm-alias-ldouble.h>.
	(fabsl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_floorl.S: Include <libm-alias-ldouble.h>.
	(floorl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_fmaxl.S: Include <libm-alias-ldouble.h>.
	(fmaxl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_fminl.S: Include <libm-alias-ldouble.h>.
	(fminl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_frexpl.S: Include <libm-alias-ldouble.h>.
	(frexpl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_llrintl.S: Include <libm-alias-ldouble.h>.
	(llrintl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_logbl.c: Include <libm-alias-ldouble.h>.
	(logbl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_lrintl.S: Include <libm-alias-ldouble.h>.
	(lrintl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_nearbyintl.S: Include <libm-alias-ldouble.h>.
	(nearbyintl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_nextafterl.c: Include <libm-alias-ldouble.h>.
	(nextafterl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_remquol.S: Include <libm-alias-ldouble.h>.
	(remquol): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_rintl.c: Include <libm-alias-ldouble.h>.
	(rintl): Define using libm_alias_ldouble.
	* sysdeps/i386/fpu/s_truncl.S: Include <libm-alias-ldouble.h>.
	(truncl): Define using libm_alias_ldouble.
	* sysdeps/i386/i686/fpu/s_fmaxl.S: Include <libm-alias-ldouble.h>.
	(fmaxl): Define using libm_alias_ldouble.
	* sysdeps/i386/i686/fpu/s_fminl.S: Include <libm-alias-ldouble.h>.
	(fminl): Define using libm_alias_ldouble.

diff --git a/sysdeps/i386/fpu/e_expl.S b/sysdeps/i386/fpu/e_expl.S
index 7d75fe2..18a627e 100644
--- a/sysdeps/i386/fpu/e_expl.S
+++ b/sysdeps/i386/fpu/e_expl.S
@@ -22,6 +22,7 @@
  * -- moshier@na-net.ornl.gov
  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 #include <i386-math-asm.h>
 
@@ -220,7 +221,7 @@ ENTRY(IEEE754_EXPL)
 END(IEEE754_EXPL)
 #ifdef USE_AS_EXPM1L
 libm_hidden_def (__expm1l)
-weak_alias (__expm1l, expm1l)
+libm_alias_ldouble (__expm1, expm1)
 #else
 strong_alias (IEEE754_EXPL, EXPL_FINITE)
 #endif
diff --git a/sysdeps/i386/fpu/s_asinhl.S b/sysdeps/i386/fpu/s_asinhl.S
index f31a267..e1d6ef7 100644
--- a/sysdeps/i386/fpu/s_asinhl.S
+++ b/sysdeps/i386/fpu/s_asinhl.S
@@ -17,6 +17,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 	.section .rodata
@@ -141,4 +142,4 @@ ENTRY(__asinhl)
 	fchs
 4:	ret
 END(__asinhl)
-weak_alias (__asinhl, asinhl)
+libm_alias_ldouble (__asinh, asinh)
diff --git a/sysdeps/i386/fpu/s_atanl.c b/sysdeps/i386/fpu/s_atanl.c
index b7dba88..2b02ac1 100644
--- a/sysdeps/i386/fpu/s_atanl.c
+++ b/sysdeps/i386/fpu/s_atanl.c
@@ -6,6 +6,7 @@
  */
 
 #include <math_private.h>
+#include <libm-alias-ldouble.h>
 
 long double
 __atanl (long double x)
@@ -19,4 +20,4 @@ __atanl (long double x)
   return res;
 }
 
-weak_alias (__atanl, atanl)
+libm_alias_ldouble (__atan, atan)
diff --git a/sysdeps/i386/fpu/s_cbrtl.S b/sysdeps/i386/fpu/s_cbrtl.S
index e4a72d2..b5f4867 100644
--- a/sysdeps/i386/fpu/s_cbrtl.S
+++ b/sysdeps/i386/fpu/s_cbrtl.S
@@ -18,6 +18,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
         .section .rodata
@@ -226,4 +227,4 @@ ENTRY(__cbrtl)
 	fadd	%st
 	ret
 END(__cbrtl)
-weak_alias (__cbrtl, cbrtl)
+libm_alias_ldouble (__cbrt, cbrt)
diff --git a/sysdeps/i386/fpu/s_ceill.S b/sysdeps/i386/fpu/s_ceill.S
index 7c08f43..70d5c6c 100644
--- a/sysdeps/i386/fpu/s_ceill.S
+++ b/sysdeps/i386/fpu/s_ceill.S
@@ -4,6 +4,7 @@
  * Public domain.
  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 RCSID("$NetBSD: $")
@@ -37,4 +38,4 @@ ENTRY(__ceill)
 	cfi_adjust_cfa_offset (-32)
 	ret
 END (__ceill)
-weak_alias (__ceill, ceill)
+libm_alias_ldouble (__ceil, ceil)
diff --git a/sysdeps/i386/fpu/s_copysignl.S b/sysdeps/i386/fpu/s_copysignl.S
index 2163e7b..671ce68 100644
--- a/sysdeps/i386/fpu/s_copysignl.S
+++ b/sysdeps/i386/fpu/s_copysignl.S
@@ -4,6 +4,7 @@
  * Public domain.
  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 RCSID("$NetBSD: $")
@@ -18,4 +19,4 @@ ENTRY(__copysignl)
 	fldt	4(%esp)
 	ret
 END (__copysignl)
-weak_alias (__copysignl, copysignl)
+libm_alias_ldouble (__copysign, copysign)
diff --git a/sysdeps/i386/fpu/s_fabsl.S b/sysdeps/i386/fpu/s_fabsl.S
index a12a3e0..6642ed4 100644
--- a/sysdeps/i386/fpu/s_fabsl.S
+++ b/sysdeps/i386/fpu/s_fabsl.S
@@ -1,3 +1,4 @@
+#include <libm-alias-ldouble.h>
 #include <sysdep.h>
 
 	.text
@@ -6,4 +7,4 @@ ENTRY(__fabsl)
 	fabs
 	ret
 END(__fabsl)
-weak_alias (__fabsl, fabsl)
+libm_alias_ldouble (__fabs, fabs)
diff --git a/sysdeps/i386/fpu/s_floorl.S b/sysdeps/i386/fpu/s_floorl.S
index dc74a0c..f85b542 100644
--- a/sysdeps/i386/fpu/s_floorl.S
+++ b/sysdeps/i386/fpu/s_floorl.S
@@ -4,6 +4,7 @@
  * Public domain.
  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 RCSID("$NetBSD: $")
@@ -37,4 +38,4 @@ ENTRY(__floorl)
 	cfi_adjust_cfa_offset (-32)
 	ret
 END (__floorl)
-weak_alias (__floorl, floorl)
+libm_alias_ldouble (__floor, floor)
diff --git a/sysdeps/i386/fpu/s_fmaxl.S b/sysdeps/i386/fpu/s_fmaxl.S
index 6816292..51264c4 100644
--- a/sysdeps/i386/fpu/s_fmaxl.S
+++ b/sysdeps/i386/fpu/s_fmaxl.S
@@ -17,6 +17,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <sysdep.h>
 
 	.text
@@ -68,4 +69,4 @@ ENTRY(__fmaxl)
 	faddp
 	ret
 END(__fmaxl)
-weak_alias (__fmaxl, fmaxl)
+libm_alias_ldouble (__fmax, fmax)
diff --git a/sysdeps/i386/fpu/s_fminl.S b/sysdeps/i386/fpu/s_fminl.S
index 12ef21f..d496521 100644
--- a/sysdeps/i386/fpu/s_fminl.S
+++ b/sysdeps/i386/fpu/s_fminl.S
@@ -17,6 +17,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <sysdep.h>
 
 	.text
@@ -68,4 +69,4 @@ ENTRY(__fminl)
 	faddp
 	ret
 END(__fminl)
-weak_alias (__fminl, fminl)
+libm_alias_ldouble (__fmin, fmin)
diff --git a/sysdeps/i386/fpu/s_frexpl.S b/sysdeps/i386/fpu/s_frexpl.S
index 04f2888..5d71c90 100644
--- a/sysdeps/i386/fpu/s_frexpl.S
+++ b/sysdeps/i386/fpu/s_frexpl.S
@@ -17,6 +17,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 	.section .rodata
@@ -89,4 +90,4 @@ ENTRY (__frexpl)
 	movl	%ecx, (%eax)
 	ret
 END (__frexpl)
-weak_alias (__frexpl, frexpl)
+libm_alias_ldouble (__frexp, frexp)
diff --git a/sysdeps/i386/fpu/s_llrintl.S b/sysdeps/i386/fpu/s_llrintl.S
index 7b48c02..87c11b1 100644
--- a/sysdeps/i386/fpu/s_llrintl.S
+++ b/sysdeps/i386/fpu/s_llrintl.S
@@ -18,6 +18,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <sysdep.h>
 
 	.text
@@ -33,4 +34,4 @@ ENTRY(__llrintl)
 	cfi_adjust_cfa_offset (-4)
 	ret
 END(__llrintl)
-weak_alias (__llrintl, llrintl)
+libm_alias_ldouble (__llrint, llrint)
diff --git a/sysdeps/i386/fpu/s_logbl.c b/sysdeps/i386/fpu/s_logbl.c
index 391e2db..601d873 100644
--- a/sysdeps/i386/fpu/s_logbl.c
+++ b/sysdeps/i386/fpu/s_logbl.c
@@ -4,6 +4,7 @@
  * Public domain.
  */
 
+#include <libm-alias-ldouble.h>
 #include <math_private.h>
 
 long double
@@ -16,4 +17,4 @@ __logbl (long double x)
   return res;
 }
 
-weak_alias (__logbl, logbl)
+libm_alias_ldouble (__logb, logb)
diff --git a/sysdeps/i386/fpu/s_lrintl.S b/sysdeps/i386/fpu/s_lrintl.S
index ba6dbdf..b55f50c 100644
--- a/sysdeps/i386/fpu/s_lrintl.S
+++ b/sysdeps/i386/fpu/s_lrintl.S
@@ -18,6 +18,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <sysdep.h>
 
 	.text
@@ -31,4 +32,4 @@ ENTRY(__lrintl)
 	cfi_adjust_cfa_offset (-4)
 	ret
 END(__lrintl)
-weak_alias (__lrintl, lrintl)
+libm_alias_ldouble (__lrint, lrint)
diff --git a/sysdeps/i386/fpu/s_nearbyintl.S b/sysdeps/i386/fpu/s_nearbyintl.S
index 3b7d1e2..852e1f6 100644
--- a/sysdeps/i386/fpu/s_nearbyintl.S
+++ b/sysdeps/i386/fpu/s_nearbyintl.S
@@ -4,6 +4,7 @@
  */
 /* Adapted for use as nearbyint by Ulrich Drepper <drepper@cygnus.com>.  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 ENTRY(__nearbyintl)
@@ -20,4 +21,4 @@ ENTRY(__nearbyintl)
 	cfi_adjust_cfa_offset (-32)
 	ret
 END (__nearbyintl)
-weak_alias (__nearbyintl, nearbyintl)
+libm_alias_ldouble (__nearbyint, nearbyint)
diff --git a/sysdeps/i386/fpu/s_nextafterl.c b/sysdeps/i386/fpu/s_nextafterl.c
index 92f53ab..0ad2ea0 100644
--- a/sysdeps/i386/fpu/s_nextafterl.c
+++ b/sysdeps/i386/fpu/s_nextafterl.c
@@ -29,6 +29,7 @@ static char rcsid[] = "$NetBSD: $";
 #include <errno.h>
 #include <math.h>
 #include <math_private.h>
+#include <libm-alias-ldouble.h>
 
 long double __nextafterl(long double x, long double y)
 {
@@ -120,6 +121,6 @@ long double __nextafterl(long double x, long double y)
 	SET_LDOUBLE_WORDS(x,esx,hx,lx);
 	return x;
 }
-weak_alias (__nextafterl, nextafterl)
+libm_alias_ldouble (__nextafter, nextafter)
 strong_alias (__nextafterl, __nexttowardl)
 weak_alias (__nextafterl, nexttowardl)
diff --git a/sysdeps/i386/fpu/s_remquol.S b/sysdeps/i386/fpu/s_remquol.S
index f3d84fc..f02cc10 100644
--- a/sysdeps/i386/fpu/s_remquol.S
+++ b/sysdeps/i386/fpu/s_remquol.S
@@ -4,6 +4,7 @@
  * Public domain.
  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 #define PARMS	4		/* no space for saved regs */
@@ -42,4 +43,4 @@ ENTRY (__remquol)
 
 	ret
 END (__remquol)
-weak_alias (__remquol, remquol)
+libm_alias_ldouble (__remquo, remquo)
diff --git a/sysdeps/i386/fpu/s_rintl.c b/sysdeps/i386/fpu/s_rintl.c
index 66af9cb..5900435 100644
--- a/sysdeps/i386/fpu/s_rintl.c
+++ b/sysdeps/i386/fpu/s_rintl.c
@@ -4,6 +4,7 @@
  * Public domain.
  */
 
+#include <libm-alias-ldouble.h>
 #include <math_private.h>
 
 long double
@@ -15,4 +16,4 @@ __rintl (long double x)
   return res;
 }
 
-weak_alias (__rintl, rintl)
+libm_alias_ldouble (__rint, rint)
diff --git a/sysdeps/i386/fpu/s_truncl.S b/sysdeps/i386/fpu/s_truncl.S
index a884123..62083f9 100644
--- a/sysdeps/i386/fpu/s_truncl.S
+++ b/sysdeps/i386/fpu/s_truncl.S
@@ -17,6 +17,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <machine/asm.h>
 
 ENTRY(__truncl)
@@ -37,4 +38,4 @@ ENTRY(__truncl)
 	cfi_adjust_cfa_offset (-32)
 	ret
 END(__truncl)
-weak_alias (__truncl, truncl)
+libm_alias_ldouble (__trunc, trunc)
diff --git a/sysdeps/i386/i686/fpu/s_fmaxl.S b/sysdeps/i386/i686/fpu/s_fmaxl.S
index 3f6c21c..a669eed 100644
--- a/sysdeps/i386/i686/fpu/s_fmaxl.S
+++ b/sysdeps/i386/i686/fpu/s_fmaxl.S
@@ -18,6 +18,7 @@
    <http://www.gnu.org/licenses/>.  */
 
 #include <sysdep.h>
+#include <libm-alias-ldouble.h>
 
 	.text
 ENTRY(__fmaxl)
@@ -55,4 +56,4 @@ ENTRY(__fmaxl)
 	faddp
 	ret
 END(__fmaxl)
-weak_alias (__fmaxl, fmaxl)
+libm_alias_ldouble (__fmax, fmax)
diff --git a/sysdeps/i386/i686/fpu/s_fminl.S b/sysdeps/i386/i686/fpu/s_fminl.S
index e1cb83f..5fdda36 100644
--- a/sysdeps/i386/i686/fpu/s_fminl.S
+++ b/sysdeps/i386/i686/fpu/s_fminl.S
@@ -17,6 +17,7 @@
    License along with the GNU C Library; if not, see
    <http://www.gnu.org/licenses/>.  */
 
+#include <libm-alias-ldouble.h>
 #include <sysdep.h>
 
 	.text
@@ -55,4 +56,4 @@ ENTRY(__fminl)
 	faddp
 	ret
 END(__fminl)
-weak_alias (__fminl, fminl)
+libm_alias_ldouble (__fmin, fmin)

-- 
Joseph S. Myers
joseph@codesourcery.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]