diff options
Diffstat (limited to 'sysdeps/x86_64/fpu/multiarch')
31 files changed, 75 insertions, 60 deletions
diff --git a/sysdeps/x86_64/fpu/multiarch/e_log-avx.c b/sysdeps/x86_64/fpu/multiarch/e_log-avx.c index b22a5767be..bbd019b528 100644 --- a/sysdeps/x86_64/fpu/multiarch/e_log-avx.c +++ b/sysdeps/x86_64/fpu/multiarch/e_log-avx.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __ieee754_log __ieee754_log_avx #define SECTION __attribute__ ((section (".text.avx"))) diff --git a/sysdeps/x86_64/fpu/multiarch/e_log-fma.c b/sysdeps/x86_64/fpu/multiarch/e_log-fma.c index bce0ee03c2..4e9fbb8990 100644 --- a/sysdeps/x86_64/fpu/multiarch/e_log-fma.c +++ b/sysdeps/x86_64/fpu/multiarch/e_log-fma.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __ieee754_log __ieee754_log_fma #define SECTION __attribute__ ((section (".text.fma"))) diff --git a/sysdeps/x86_64/fpu/multiarch/e_log-fma4.c b/sysdeps/x86_64/fpu/multiarch/e_log-fma4.c index f458f9c23c..18fb2403a0 100644 --- a/sysdeps/x86_64/fpu/multiarch/e_log-fma4.c +++ b/sysdeps/x86_64/fpu/multiarch/e_log-fma4.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __ieee754_log __ieee754_log_fma4 #define SECTION __attribute__ ((section (".text.fma4"))) diff --git a/sysdeps/x86_64/fpu/multiarch/e_logf-fma.c b/sysdeps/x86_64/fpu/multiarch/e_logf-fma.c index a47fd8195f..445c0e851e 100644 --- a/sysdeps/x86_64/fpu/multiarch/e_logf-fma.c +++ b/sysdeps/x86_64/fpu/multiarch/e_logf-fma.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __logf __logf_fma #include <sysdeps/ieee754/flt-32/e_logf.c> diff --git a/sysdeps/x86_64/fpu/multiarch/e_powf.c b/sysdeps/x86_64/fpu/multiarch/e_powf.c index a185006f40..4caad1a50d 100644 --- a/sysdeps/x86_64/fpu/multiarch/e_powf.c +++ b/sysdeps/x86_64/fpu/multiarch/e_powf.c @@ -16,12 +16,10 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -#define powf __redirect_powf -#define __DECL_SIMD___redirect_powf -#include <math.h> -#undef powf +extern typeof (__powf) __redirect_powf; #define SYMBOL_NAME powf #include "ifunc-fma.h" diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c b/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c index 41816bfe6c..b8a4e0877a 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c +++ b/sysdeps/x86_64/fpu/multiarch/s_atan-avx.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __atan __atan_avx #define __add __add_avx #define __dbl_mp __dbl_mp_avx diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c b/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c index 363e32bcbd..63d2728bed 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c +++ b/sysdeps/x86_64/fpu/multiarch/s_atan-fma.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __atan __atan_fma #define __add __add_fma #define __dbl_mp __dbl_mp_fma diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c b/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c index ad8d3af579..ebf49e3333 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c +++ b/sysdeps/x86_64/fpu/multiarch/s_atan-fma4.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __atan __atan_fma4 #define __add __add_fma4 #define __dbl_mp __dbl_mp_fma4 diff --git a/sysdeps/x86_64/fpu/multiarch/s_atan.c b/sysdeps/x86_64/fpu/multiarch/s_atan.c index f9ce8549ab..20a95da859 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_atan.c +++ b/sysdeps/x86_64/fpu/multiarch/s_atan.c @@ -16,6 +16,7 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-double.h> extern double __redirect_atan (double); @@ -24,6 +25,7 @@ extern double __redirect_atan (double); #include "ifunc-avx-fma4.h" libc_ifunc_redirected (__redirect_atan, __atan, IFUNC_SELECTOR ()); +libm_hidden_def (__atan) libm_alias_double (__atan, atan) #define __atan __atan_sse2 diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceil-c.c b/sysdeps/x86_64/fpu/multiarch/s_ceil-c.c index 6a5ea3ff27..094f946d41 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_ceil-c.c +++ b/sysdeps/x86_64/fpu/multiarch/s_ceil-c.c @@ -1,2 +1,3 @@ +#include <math.h> #define __ceil __ceil_c #include <sysdeps/ieee754/dbl-64/wordsize-64/s_ceil.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceil.c b/sysdeps/x86_64/fpu/multiarch/s_ceil.c index 070fcdddea..99bf8cc301 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_ceil.c +++ b/sysdeps/x86_64/fpu/multiarch/s_ceil.c @@ -16,16 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-double.h> -#define ceil __redirect_ceil -#define __ceil __redirect___ceil -#include <math.h> -#undef ceil -#undef __ceil +extern typeof (__ceil) __redirect_ceil; #define SYMBOL_NAME ceil #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_ceil, __ceil, IFUNC_SELECTOR ()); +libm_hidden_def (__ceil) libm_alias_double (__ceil, ceil) diff --git a/sysdeps/x86_64/fpu/multiarch/s_ceilf.c b/sysdeps/x86_64/fpu/multiarch/s_ceilf.c index db0c6c4bc3..b35af7bf0b 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_ceilf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_ceilf.c @@ -17,15 +17,13 @@ <http://www.gnu.org/licenses/>. */ #include <libm-alias-float.h> - -#define ceilf __redirect_ceilf -#define __ceilf __redirect___ceilf #include <math.h> -#undef ceilf -#undef __ceilf + +extern typeof (__ceilf) __redirect_ceilf; #define SYMBOL_NAME ceilf #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_ceilf, __ceilf, IFUNC_SELECTOR ()); +libm_hidden_def (__ceilf) libm_alias_float (__ceil, ceil) diff --git a/sysdeps/x86_64/fpu/multiarch/s_cosf.c b/sysdeps/x86_64/fpu/multiarch/s_cosf.c index 33959d3d01..ef93242b75 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_cosf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_cosf.c @@ -16,13 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -extern float __redirect_cosf (float); +extern typeof (__cosf) __redirect_cosf; #define SYMBOL_NAME cosf #include "ifunc-fma.h" libc_ifunc_redirected (__redirect_cosf, __cosf, IFUNC_SELECTOR ()); - +libm_hidden_def (__cosf) libm_alias_float (__cos, cos) diff --git a/sysdeps/x86_64/fpu/multiarch/s_floor-c.c b/sysdeps/x86_64/fpu/multiarch/s_floor-c.c index 68733b69ef..8a1b5eb7a2 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_floor-c.c +++ b/sysdeps/x86_64/fpu/multiarch/s_floor-c.c @@ -1,3 +1,4 @@ +#include <math.h> #undef __floor #define __floor __floor_c #include <sysdeps/ieee754/dbl-64/wordsize-64/s_floor.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_floor.c b/sysdeps/x86_64/fpu/multiarch/s_floor.c index 58f8ed8eaf..cbcab2d419 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_floor.c +++ b/sysdeps/x86_64/fpu/multiarch/s_floor.c @@ -16,16 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-double.h> -#define floor __redirect_floor -#define __floor __redirect___floor -#include <math.h> -#undef floor -#undef __floor +extern typeof (__floor) __redirect_floor; #define SYMBOL_NAME floor #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_floor, __floor, IFUNC_SELECTOR ()); +libm_hidden_def (__floor) libm_alias_double (__floor, floor) diff --git a/sysdeps/x86_64/fpu/multiarch/s_floorf.c b/sysdeps/x86_64/fpu/multiarch/s_floorf.c index 5ef2fec2e3..c73a3c0fc6 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_floorf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_floorf.c @@ -16,16 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -#define floorf __redirect_floorf -#define __floorf __redirect___floorf -#include <math.h> -#undef floorf -#undef __floorf +extern typeof (__floorf) __redirect_floorf; #define SYMBOL_NAME floorf #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_floorf, __floorf, IFUNC_SELECTOR ()); +libm_hidden_def (__floorf) libm_alias_float (__floor, floor) diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyint-c.c b/sysdeps/x86_64/fpu/multiarch/s_nearbyint-c.c index f897a2a6a6..35b36ef102 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_nearbyint-c.c +++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyint-c.c @@ -1,3 +1,8 @@ +#include <math.h> + +extern typeof (__nearbyint) __nearbyint_c; +libm_hidden_proto (__nearbyint_c) + #undef __nearbyint #define __nearbyint __nearbyint_c #include <sysdeps/ieee754/dbl-64/wordsize-64/s_nearbyint.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c b/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c index d92945fd14..d55bd0ec29 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c +++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyint.c @@ -16,17 +16,15 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-double.h> -#define nearbyint __redirect_nearbyint -#define __nearbyint __redirect___nearbyint -#include <math.h> -#undef nearbyint -#undef __nearbyint +extern typeof (__nearbyint) __redirect_nearbyint; #define SYMBOL_NAME nearbyint #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_nearbyint, __nearbyint, IFUNC_SELECTOR ()); +libm_hidden_def (__nearbyint) libm_alias_double (__nearbyint, nearbyint) diff --git a/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c index ba7be27956..1524633ac2 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_nearbyintf.c @@ -16,17 +16,15 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -#define nearbyintf __redirect_nearbyintf -#define __nearbyintf __redirect___nearbyintf -#include <math.h> -#undef nearbyintf -#undef __nearbyintf +extern typeof (__nearbyintf) __redirect_nearbyintf; #define SYMBOL_NAME nearbyintf #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_nearbyintf, __nearbyintf, IFUNC_SELECTOR ()); +libm_hidden_def (__nearbyintf) libm_alias_float (__nearbyint, nearbyint) diff --git a/sysdeps/x86_64/fpu/multiarch/s_rint-c.c b/sysdeps/x86_64/fpu/multiarch/s_rint-c.c index 162a630ff9..7a0757ae7a 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_rint-c.c +++ b/sysdeps/x86_64/fpu/multiarch/s_rint-c.c @@ -1,3 +1,4 @@ +#include <math.h> #undef __rint #define __rint __rint_c #include <sysdeps/ieee754/dbl-64/wordsize-64/s_rint.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_rint.c b/sysdeps/x86_64/fpu/multiarch/s_rint.c index f1cb2fed0c..2e96907aff 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_rint.c +++ b/sysdeps/x86_64/fpu/multiarch/s_rint.c @@ -16,16 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-double.h> -#define rint __redirect_rint -#define __rint __redirect___rint -#include <math.h> -#undef rint -#undef __rint +extern typeof (__rint) __redirect_rint; #define SYMBOL_NAME rint #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_rint, __rint, IFUNC_SELECTOR ()); +libm_hidden_def (__rint) libm_alias_double (__rint, rint) diff --git a/sysdeps/x86_64/fpu/multiarch/s_rintf.c b/sysdeps/x86_64/fpu/multiarch/s_rintf.c index 41323b3b5b..011c7effa0 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_rintf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_rintf.c @@ -16,16 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -#define rintf __redirect_rintf -#define __rintf __redirect___rintf -#include <math.h> -#undef rintf -#undef __rintf +extern typeof (__rintf) __redirect_rintf; #define SYMBOL_NAME rintf #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_rintf, __rintf, IFUNC_SELECTOR ()); +libm_hidden_def (__rintf) libm_alias_float (__rint, rint) diff --git a/sysdeps/x86_64/fpu/multiarch/s_sin-avx.c b/sysdeps/x86_64/fpu/multiarch/s_sin-avx.c index e1c6de0259..1ad90c0878 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_sin-avx.c +++ b/sysdeps/x86_64/fpu/multiarch/s_sin-avx.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __cos __cos_avx #define __sin __sin_avx #define SECTION __attribute__ ((section (".text.avx"))) diff --git a/sysdeps/x86_64/fpu/multiarch/s_sin-fma.c b/sysdeps/x86_64/fpu/multiarch/s_sin-fma.c index 15f3c394d5..5768f95ac0 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_sin-fma.c +++ b/sysdeps/x86_64/fpu/multiarch/s_sin-fma.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __cos __cos_fma #define __sin __sin_fma #define __docos __docos_fma diff --git a/sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c b/sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c index 4c35739dc9..dc131ef11d 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c +++ b/sysdeps/x86_64/fpu/multiarch/s_sin-fma4.c @@ -1,3 +1,5 @@ +#include <math.h> + #define __cos __cos_fma4 #define __sin __sin_fma4 #define __docos __docos_fma4 diff --git a/sysdeps/x86_64/fpu/multiarch/s_sin.c b/sysdeps/x86_64/fpu/multiarch/s_sin.c index b289269240..09209b209a 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_sin.c +++ b/sysdeps/x86_64/fpu/multiarch/s_sin.c @@ -16,6 +16,7 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-double.h> extern double __redirect_sin (double); @@ -25,6 +26,7 @@ extern double __redirect_cos (double); #include "ifunc-avx-fma4.h" libc_ifunc_redirected (__redirect_sin, __sin, IFUNC_SELECTOR ()); +libm_hidden_def (__sin) libm_alias_double (__sin, sin) #undef SYMBOL_NAME @@ -32,6 +34,7 @@ libm_alias_double (__sin, sin) #include "ifunc-avx-fma4.h" libc_ifunc_redirected (__redirect_cos, __cos, IFUNC_SELECTOR ()); +libm_hidden_def (__cos) libm_alias_double (__cos, cos) #define __cos __cos_sse2 diff --git a/sysdeps/x86_64/fpu/multiarch/s_sincosf.c b/sysdeps/x86_64/fpu/multiarch/s_sincosf.c index 6cb4295558..ab4b1503f7 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_sincosf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_sincosf.c @@ -16,13 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -extern void __redirect_sincosf (float, float *, float *); +extern typeof (__sincosf) __redirect_sincosf; #define SYMBOL_NAME sincosf #include "ifunc-fma.h" libc_ifunc_redirected (__redirect_sincosf, __sincosf, IFUNC_SELECTOR ()); - +libm_hidden_def (__sincosf) libm_alias_float (__sincos, sincos) diff --git a/sysdeps/x86_64/fpu/multiarch/s_sinf.c b/sysdeps/x86_64/fpu/multiarch/s_sinf.c index 4fdfbd8d3e..705a6a68f4 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_sinf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_sinf.c @@ -16,13 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -extern float __redirect_sinf (float); +extern typeof (__sinf) __redirect_sinf; #define SYMBOL_NAME sinf #include "ifunc-fma.h" libc_ifunc_redirected (__redirect_sinf, __sinf, IFUNC_SELECTOR ()); - +libm_hidden_def (__sinf) libm_alias_float (__sin, sin) diff --git a/sysdeps/x86_64/fpu/multiarch/s_trunc-c.c b/sysdeps/x86_64/fpu/multiarch/s_trunc-c.c index 6204ae3c77..e28a328df7 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_trunc-c.c +++ b/sysdeps/x86_64/fpu/multiarch/s_trunc-c.c @@ -1,2 +1,3 @@ +#include <math.h> #define __trunc __trunc_c #include <sysdeps/ieee754/dbl-64/wordsize-64/s_trunc.c> diff --git a/sysdeps/x86_64/fpu/multiarch/s_trunc.c b/sysdeps/x86_64/fpu/multiarch/s_trunc.c index a1b0c60630..7cb576a1a4 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_trunc.c +++ b/sysdeps/x86_64/fpu/multiarch/s_trunc.c @@ -16,16 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-double.h> -#define trunc __redirect_trunc -#define __trunc __redirect___trunc -#include <math.h> -#undef trunc -#undef __trunc +extern typeof (__trunc) __redirect_trunc; #define SYMBOL_NAME trunc #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_trunc, __trunc, IFUNC_SELECTOR ()); +libm_hidden_def (__trunc) libm_alias_double (__trunc, trunc) diff --git a/sysdeps/x86_64/fpu/multiarch/s_truncf.c b/sysdeps/x86_64/fpu/multiarch/s_truncf.c index a7e220bd0c..0bd7e6ce06 100644 --- a/sysdeps/x86_64/fpu/multiarch/s_truncf.c +++ b/sysdeps/x86_64/fpu/multiarch/s_truncf.c @@ -16,16 +16,14 @@ License along with the GNU C Library; if not, see <http://www.gnu.org/licenses/>. */ +#include <math.h> #include <libm-alias-float.h> -#define truncf __redirect_truncf -#define __truncf __redirect___truncf -#include <math.h> -#undef truncf -#undef __truncf +extern typeof (__truncf) __redirect_truncf; #define SYMBOL_NAME truncf #include "ifunc-sse4_1.h" libc_ifunc_redirected (__redirect_truncf, __truncf, IFUNC_SELECTOR ()); +libm_hidden_def (__truncf) libm_alias_float (__trunc, trunc) |