about summary refs log tree commit diff
path: root/sysdeps/x86_64/fpu
diff options
context:
space:
mode:
authorJoseph Myers <joseph@codesourcery.com>2017-10-02 20:20:52 +0000
committerJoseph Myers <joseph@codesourcery.com>2017-10-02 20:20:52 +0000
commit527cd19c3d39288ae170fe09de87c05a27f4e12b (patch)
tree69fff3a2dca2c69df65eff598d6a963de0a079ac /sysdeps/x86_64/fpu
parentbdc5c59214a9e4bd9a299deead29c04ddf141256 (diff)
downloadglibc-527cd19c3d39288ae170fe09de87c05a27f4e12b.tar.gz
glibc-527cd19c3d39288ae170fe09de87c05a27f4e12b.tar.xz
glibc-527cd19c3d39288ae170fe09de87c05a27f4e12b.zip
Make dbl-64 atan and tan into weak aliases.
This patch converts the dbl-64 implementations of atan and tan into
weak aliases of __atan and __tan, in preparation for making them use
libm_alias_double.  Consequent changes are made to the x86_64
multiarch versions wrapping round them (with the dbl-64 functions,
like other such functions, being made not to define their aliases at
all if __atan or __tan are defined as macros by an including file).

Tested for x86_64, and with build-many-glibcs.py.

	* sysdeps/ieee754/dbl-64/s_atan.c (atan): Rename to __atan and
	define as weak alias of __atan.  Do not define any aliases if
	[__atan].
	[NO_LONG_DOUBLE] (__atanl): Define as strong alias of __atan.
	[NO_LONG_DOUBLE] (atanl): Define as weak alias of __atanl.
	* sysdeps/ieee754/dbl-64/s_tan.c (tan): Rename to __tan and define
	as weak alias of __tan.  Do not define any aliases if [__tan].
	[NO_LONG_DOUBLE] (__tanl): Define as strong alias of __tan.
	[NO_LONG_DOUBLE] (tanl): Define as weak alias of __tanl.
	* sysdeps/x86_64/fpu/multiarch/s_atan-avx.c (atan): Rename to
	__atan.
	* sysdeps/x86_64/fpu/multiarch/s_atan-fma.c (atan): Likewise.
	* sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c (atan): Likewise.
	* sysdeps/x86_64/fpu/multiarch/s_atan.c (atan): Rename to __atan
	and define as weak alias of __atan.
	* sysdeps/x86_64/fpu/multiarch/s_tan-avx.c (tan): Rename to
	__atan.
	* sysdeps/x86_64/fpu/multiarch/s_tan-fma.c (tan): Likewise.
	* sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c (tan): Likewise.
	* sysdeps/x86_64/fpu/multiarch/s_tan.c (tan): Rename to __tan and
	define as weak alias of __tan.
Diffstat (limited to 'sysdeps/x86_64/fpu')
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_atan-avx.c2
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_atan-fma.c2
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c2
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_atan.c5
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_tan-avx.c2
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_tan-fma.c2
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c2
-rw-r--r--sysdeps/x86_64/fpu/multiarch/s_tan.c5
8 files changed, 12 insertions, 10 deletions
diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c b/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c
index b5cb9c3a75..41816bfe6c 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c
@@ -1,4 +1,4 @@
-#define atan __atan_avx
+#define __atan __atan_avx
 #define __add __add_avx
 #define __dbl_mp __dbl_mp_avx
 #define __mul __mul_avx
diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c b/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c
index bedb3f2053..363e32bcbd 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c
@@ -1,4 +1,4 @@
-#define atan __atan_fma
+#define __atan __atan_fma
 #define __add __add_fma
 #define __dbl_mp __dbl_mp_fma
 #define __mpatan __mpatan_fma
diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c b/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c
index 9e83e6cdab..ad8d3af579 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c
@@ -1,4 +1,4 @@
-#define atan __atan_fma4
+#define __atan __atan_fma4
 #define __add __add_fma4
 #define __dbl_mp __dbl_mp_fma4
 #define __mpatan __mpatan_fma4
diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan.c b/sysdeps/x86_64/fpu/multiarch/s_atan.c
index f81919cbbe..5d864dd4f0 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_atan.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_atan.c
@@ -21,7 +21,8 @@ extern double __redirect_atan (double);
 #define SYMBOL_NAME atan
 #include "ifunc-avx-fma4.h"
 
-libc_ifunc_redirected (__redirect_atan, atan, IFUNC_SELECTOR ());
+libc_ifunc_redirected (__redirect_atan, __atan, IFUNC_SELECTOR ());
+weak_alias (__atan, atan)
 
-#define atan __atan_sse2
+#define __atan __atan_sse2
 #include <sysdeps/ieee754/dbl-64/s_atan.c>
diff --git a/sysdeps/x86_64/fpu/multiarch/s_tan-avx.c b/sysdeps/x86_64/fpu/multiarch/s_tan-avx.c
index 53de5d3c98..5ee29a9a06 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_tan-avx.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_tan-avx.c
@@ -1,4 +1,4 @@
-#define tan __tan_avx
+#define __tan __tan_avx
 #define __dbl_mp __dbl_mp_avx
 #define __sub __sub_avx
 #define SECTION __attribute__ ((section (".text.avx")))
diff --git a/sysdeps/x86_64/fpu/multiarch/s_tan-fma.c b/sysdeps/x86_64/fpu/multiarch/s_tan-fma.c
index c85f8bceed..1a1b9d2490 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_tan-fma.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_tan-fma.c
@@ -1,4 +1,4 @@
-#define tan __tan_fma
+#define __tan __tan_fma
 #define __dbl_mp __dbl_mp_fma
 #define __mpranred __mpranred_fma
 #define __mptan __mptan_fma
diff --git a/sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c b/sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c
index a805440b46..e4e9f6cb85 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_tan-fma4.c
@@ -1,4 +1,4 @@
-#define tan __tan_fma4
+#define __tan __tan_fma4
 #define __dbl_mp __dbl_mp_fma4
 #define __mpranred __mpranred_fma4
 #define __mptan __mptan_fma4
diff --git a/sysdeps/x86_64/fpu/multiarch/s_tan.c b/sysdeps/x86_64/fpu/multiarch/s_tan.c
index 96a73811f3..86377a8766 100644
--- a/sysdeps/x86_64/fpu/multiarch/s_tan.c
+++ b/sysdeps/x86_64/fpu/multiarch/s_tan.c
@@ -21,7 +21,8 @@ extern double __redirect_tan (double);
 #define SYMBOL_NAME tan
 #include "ifunc-avx-fma4.h"
 
-libc_ifunc_redirected (__redirect_tan, tan, IFUNC_SELECTOR ());
+libc_ifunc_redirected (__redirect_tan, __tan, IFUNC_SELECTOR ());
+weak_alias (__tan, tan)
 
-#define tan __tan_sse2
+#define __tan __tan_sse2
 #include <sysdeps/ieee754/dbl-64/s_tan.c>