summaryrefslogtreecommitdiff
path: root/sysdeps/sparc/sparc64/fpu
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-11-30 00:30:40 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-11-30 00:30:40 +0000
commit3e5efdbdbef923276f3113a5bc52e0b46aabac57 (patch)
tree6530100193044c1550eac5787ea74828d5bd823c /sysdeps/sparc/sparc64/fpu
parent875cd54855034ff0f328ce8bf797843a1ca33667 (diff)
downloadglibc-3e5efdbdbef923276f3113a5bc52e0b46aabac57.tar.gz
Use libm_alias_float for sparc.
Continuing the preparation for additional _FloatN / _FloatNx function aliases, this patch makes sparc libm function implementations use libm_alias_float to define function aliases. Tested with build-many-glibcs.py for all its sparc configurations that installed stripped shared libraries are unchanged by the patch. * sysdeps/sparc/sparc32/fpu/s_copysignf.S: Include <libm-alias-float.h>. (copysignf): Define using libm_alias_float. * sysdeps/sparc/sparc32/fpu/s_fabsf.S: Include <libm-alias-float.h>. (fabsf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_copysignf.S: Include <libm-alias-float.h>. (copysignf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fabsf.S: Include <libm-alias-float.h>. (fabsf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fdimf.c: Include <libm-alias-float.h>. (fdimf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_fmaf.c: Include <libm-alias-float.h>. (fmaf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_llrintf.S: Include <libm-alias-float.h>. (llrintf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_nearbyintf.S: Include <libm-alias-float.h>. (nearbyintf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/multiarch/s_rintf.S: Include <libm-alias-float.h>. (rintf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/s_llrintf.S: Include <libm-alias-float.h>. (llrintf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/s_lrintf.S: Include <libm-alias-float.h>. (lrintf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/s_nearbyintf.S: Include <libm-alias-float.h>. (nearbyintf): Define using libm_alias_float. * sysdeps/sparc/sparc32/sparcv9/fpu/s_rintf.S: Include <libm-alias-float.h>. (rintf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c: Include <libm-alias-float.h>. (ceilf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c: Include <libm-alias-float.h>. (floorf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c: Include <libm-alias-float.h>. (fmaf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c: Include <libm-alias-float.h>. (lrintf): Define using libm_alias_float. (llrintf): Likewise. * sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c: Include <libm-alias-float.h>. (nearbyintf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c: Include <libm-alias-float.h>. (rintf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c: Include <libm-alias-float.h>. (truncf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/s_copysignf.S: Include <libm-alias-float.h>. (copysignf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/s_fabsf.c: Include <libm-alias-float.h>. (fabsf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/s_lrintf.S: Include <libm-alias-float.h>. (lrintf): Define using libm_alias_float. (llrintf): Likewise. * sysdeps/sparc/sparc64/fpu/s_nearbyintf.S: Include <libm-alias-float.h>. (nearbyintf): Define using libm_alias_float. * sysdeps/sparc/sparc64/fpu/s_rintf.S: Include <libm-alias-float.h>. (rintf): Define using libm_alias_float.
Diffstat (limited to 'sysdeps/sparc/sparc64/fpu')
-rw-r--r--sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c3
-rw-r--r--sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c3
-rw-r--r--sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c3
-rw-r--r--sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c5
-rw-r--r--sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c3
-rw-r--r--sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c3
-rw-r--r--sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c3
-rw-r--r--sysdeps/sparc/sparc64/fpu/s_copysignf.S3
-rw-r--r--sysdeps/sparc/sparc64/fpu/s_fabsf.c4
-rw-r--r--sysdeps/sparc/sparc64/fpu/s_lrintf.S5
-rw-r--r--sysdeps/sparc/sparc64/fpu/s_nearbyintf.S3
-rw-r--r--sysdeps/sparc/sparc64/fpu/s_rintf.S3
12 files changed, 27 insertions, 14 deletions
diff --git a/sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c b/sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c
index 81897b5e54..14d8e6f9cf 100644
--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c
+++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_ceilf.c
@@ -18,6 +18,7 @@
#include <sparc-ifunc.h>
#include <math.h>
+#include <libm-alias-float.h>
extern __typeof (ceilf) __ceilf_vis3 attribute_hidden;
extern __typeof (ceilf) __ceilf_generic attribute_hidden;
@@ -26,4 +27,4 @@ sparc_libm_ifunc (__ceilf,
hwcap & HWCAP_SPARC_VIS3
? __ceilf_vis3
: __ceilf_generic);
-weak_alias (__ceilf, ceilf)
+libm_alias_float (__ceil, ceil)
diff --git a/sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c b/sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c
index 09d0a4524d..5660c0a257 100644
--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c
+++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_floorf.c
@@ -18,6 +18,7 @@
#include <sparc-ifunc.h>
#include <math.h>
+#include <libm-alias-float.h>
extern __typeof (floorf) __floorf_vis3 attribute_hidden;
extern __typeof (floorf) __floorf_generic attribute_hidden;
@@ -26,4 +27,4 @@ sparc_libm_ifunc (__floorf,
hwcap & HWCAP_SPARC_VIS3
? __floorf_vis3
: __floorf_generic);
-weak_alias (__floorf, floorf)
+libm_alias_float (__floor, floor)
diff --git a/sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c b/sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c
index dbed10e19a..08f71c8bba 100644
--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c
+++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_fmaf.c
@@ -1,5 +1,6 @@
#include <sparc-ifunc.h>
#include <math.h>
+#include <libm-alias-float.h>
extern __typeof (fmaf) __fmaf_vis3 attribute_hidden;
extern __typeof (fmaf) __fmaf_generic attribute_hidden;
@@ -8,4 +9,4 @@ sparc_libm_ifunc (__fmaf,
hwcap & HWCAP_SPARC_FMAF
? __fmaf_vis3
: __fmaf_generic)
-weak_alias (__fmaf, fmaf)
+libm_alias_float (__fma, fma)
diff --git a/sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c b/sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c
index 9b1a569d01..9667882cf6 100644
--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c
+++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_lrintf.c
@@ -26,6 +26,7 @@
#undef __lrintf
#undef __llrintf
#include <sparc-ifunc.h>
+#include <libm-alias-float.h>
extern __typeof (__redirect_lrintf) __lrintf_vis3 attribute_hidden;
extern __typeof (__redirect_lrintf) __lrintf_generic attribute_hidden;
@@ -34,6 +35,6 @@ sparc_libm_ifunc_redirected (__redirect_lrintf, __lrintf,
hwcap & HWCAP_SPARC_VIS3
? __lrintf_vis3
: __lrintf_generic);
-weak_alias (__lrintf, lrintf)
+libm_alias_float (__lrint, lrint)
strong_alias (__lrintf, __llrintf)
-weak_alias (__llrintf, llrintf)
+libm_alias_float (__llrint, llrint)
diff --git a/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c b/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c
index 0de020e791..5cdf2ee92e 100644
--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c
+++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_nearbyintf.c
@@ -18,6 +18,7 @@
#include <math.h>
#include <sparc-ifunc.h>
+#include <libm-alias-float.h>
extern __typeof (nearbyintf) __nearbyintf_vis3 attribute_hidden;
extern __typeof (nearbyintf) __nearbyintf_generic attribute_hidden;
@@ -26,4 +27,4 @@ sparc_libm_ifunc (__nearbyintf,
hwcap & HWCAP_SPARC_VIS3
? __nearbyintf_vis3
: __nearbyintf_generic);
-weak_alias (__nearbyintf, nearbyintf)
+libm_alias_float (__nearbyint, nearbyint)
diff --git a/sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c b/sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c
index 6fdf0921b8..e9813dbea3 100644
--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c
+++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_rintf.c
@@ -18,6 +18,7 @@
#include <math.h>
#include <sparc-ifunc.h>
+#include <libm-alias-float.h>
extern __typeof (rintf) __rintf_vis3 attribute_hidden;
extern __typeof (rintf) __rintf_generic attribute_hidden;
@@ -26,4 +27,4 @@ sparc_libm_ifunc (__rintf,
hwcap & HWCAP_SPARC_VIS3
? __rintf_vis3
: __rintf_generic);
-weak_alias (__rintf, rintf)
+libm_alias_float (__rint, rint)
diff --git a/sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c b/sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c
index 3c1fa36cf7..ffef4341a9 100644
--- a/sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c
+++ b/sysdeps/sparc/sparc64/fpu/multiarch/s_truncf.c
@@ -18,6 +18,7 @@
#include <sparc-ifunc.h>
#include <math.h>
+#include <libm-alias-float.h>
extern __typeof (truncf) __truncf_vis3 attribute_hidden;
extern __typeof (truncf) __truncf_generic attribute_hidden;
@@ -26,4 +27,4 @@ sparc_libm_ifunc (__truncf,
hwcap & HWCAP_SPARC_VIS3
? __truncf_vis3
: __truncf_generic)
-weak_alias (__truncf, truncf)
+libm_alias_float (__trunc, trunc)
diff --git a/sysdeps/sparc/sparc64/fpu/s_copysignf.S b/sysdeps/sparc/sparc64/fpu/s_copysignf.S
index 2f24217274..d9e2b7f939 100644
--- a/sysdeps/sparc/sparc64/fpu/s_copysignf.S
+++ b/sysdeps/sparc/sparc64/fpu/s_copysignf.S
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <libm-alias-float.h>
ENTRY (__copysignf)
fzeros %f7
@@ -27,4 +28,4 @@ ENTRY (__copysignf)
retl
fors %f1, %f9, %f0
END (__copysignf)
-weak_alias (__copysignf, copysignf) \ No newline at end of file
+libm_alias_float (__copysign, copysign)
diff --git a/sysdeps/sparc/sparc64/fpu/s_fabsf.c b/sysdeps/sparc/sparc64/fpu/s_fabsf.c
index 8a218e4942..5f54f80bf5 100644
--- a/sysdeps/sparc/sparc64/fpu/s_fabsf.c
+++ b/sysdeps/sparc/sparc64/fpu/s_fabsf.c
@@ -1,5 +1,7 @@
+#include <libm-alias-float.h>
+
float __fabsf (float x)
{
return __builtin_fabsf (x);
}
-weak_alias (__fabsf, fabsf)
+libm_alias_float (__fabs, fabs)
diff --git a/sysdeps/sparc/sparc64/fpu/s_lrintf.S b/sysdeps/sparc/sparc64/fpu/s_lrintf.S
index 5f2405ad9e..0417574213 100644
--- a/sysdeps/sparc/sparc64/fpu/s_lrintf.S
+++ b/sysdeps/sparc/sparc64/fpu/s_lrintf.S
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <libm-alias-float.h>
/* We pop constants into the FPU registers using the incoming
argument stack slots, since this avoid having to use any PIC
@@ -56,7 +57,7 @@ ENTRY (__lrintf)
retl
ldx [%sp + STACK_BIAS + 128], %o0
END (__lrintf)
-weak_alias (__lrintf, lrintf)
+libm_alias_float (__lrint, lrint)
strong_alias (__lrintf, __llrintf)
-weak_alias (__llrintf, llrintf)
+libm_alias_float (__llrint, llrint)
diff --git a/sysdeps/sparc/sparc64/fpu/s_nearbyintf.S b/sysdeps/sparc/sparc64/fpu/s_nearbyintf.S
index 55e3639a87..c482d3d948 100644
--- a/sysdeps/sparc/sparc64/fpu/s_nearbyintf.S
+++ b/sysdeps/sparc/sparc64/fpu/s_nearbyintf.S
@@ -20,6 +20,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <libm-alias-float.h>
/* We pop constants into the FPU registers using the incoming
argument stack slots, since this avoid having to use any PIC
@@ -60,4 +61,4 @@ ENTRY (__nearbyintf)
retl
ldx [%sp + STACK_BIAS + 144], %fsr
END (__nearbyintf)
-weak_alias (__nearbyintf, nearbyintf)
+libm_alias_float (__nearbyint, nearbyint)
diff --git a/sysdeps/sparc/sparc64/fpu/s_rintf.S b/sysdeps/sparc/sparc64/fpu/s_rintf.S
index a2f9261382..f00ec2eebc 100644
--- a/sysdeps/sparc/sparc64/fpu/s_rintf.S
+++ b/sysdeps/sparc/sparc64/fpu/s_rintf.S
@@ -18,6 +18,7 @@
<http://www.gnu.org/licenses/>. */
#include <sysdep.h>
+#include <libm-alias-float.h>
/* We pop constants into the FPU registers using the incoming
argument stack slots, since this avoid having to use any PIC
@@ -53,4 +54,4 @@ ENTRY (__rintf)
retl
fors %f0, SIGN_BIT, %f0
END (__rintf)
-weak_alias (__rintf, rintf)
+libm_alias_float (__rint, rint)