diff options
50 files changed, 109 insertions, 3 deletions
@@ -1,3 +1,61 @@ +2017-11-29 Joseph Myers <joseph@codesourcery.com> + + * sysdeps/ia64/fpu/libm-symbols.h: Include <libm-alias-double.h>. + * sysdeps/ia64/fpu/e_acos.S (acos): Use libm_alias_double_other. + * sysdeps/ia64/fpu/e_acosh.S (acosh): Likewise. + * sysdeps/ia64/fpu/e_asin.S (asin): Likewise. + * sysdeps/ia64/fpu/e_atan2.S (atan2): Likewise. + * sysdeps/ia64/fpu/e_atanh.S (atanh): Likewise. + * sysdeps/ia64/fpu/e_cosh.S (cosh): Likewise. + * sysdeps/ia64/fpu/e_exp.S (exp): Likewise. + * sysdeps/ia64/fpu/e_exp10.S (exp10): Likewise. + * sysdeps/ia64/fpu/e_exp2.S (exp2): Likewise. + * sysdeps/ia64/fpu/e_fmod.S (fmod): Likewise. + * sysdeps/ia64/fpu/e_hypot.S (hypot): Likewise. + * sysdeps/ia64/fpu/e_lgamma_r.c (lgamma_r): Define using + libm_alias_double_r. + * sysdeps/ia64/fpu/e_log.S (log10): Use libm_alias_double_other. + (log): Likewise. + * sysdeps/ia64/fpu/e_log2.S (log2): Likewise. + * sysdeps/ia64/fpu/e_pow.S (pow): Likewise. + * sysdeps/ia64/fpu/e_remainder.S (remainder): Likewise. + * sysdeps/ia64/fpu/e_sinh.S (sinh): Likewise. + * sysdeps/ia64/fpu/e_sqrt.S (sqrt): Likewise. + * sysdeps/ia64/fpu/libm_sincos.S (sincos): Likewise. + * sysdeps/ia64/fpu/s_asinh.S (asinh): Likewise. + * sysdeps/ia64/fpu/s_atan.S (atan): Likewise. + * sysdeps/ia64/fpu/s_cbrt.S (cbrt): Likewise. + * sysdeps/ia64/fpu/s_ceil.S (ceil): Likewise. + * sysdeps/ia64/fpu/s_copysign.S (copysign): Define using + libm_alias_double. + * sysdeps/ia64/fpu/s_cos.S (sin): Use libm_alias_double_other. + (cos): Likewise. + * sysdeps/ia64/fpu/s_erf.S (erf): Likewise. + * sysdeps/ia64/fpu/s_erfc.S (erfc): Likewise. + * sysdeps/ia64/fpu/s_expm1.S (expm1): Likewise. + * sysdeps/ia64/fpu/s_fabs.S (fabs): Likewise. + * sysdeps/ia64/fpu/s_fdim.S (fdim): Likewise. + * sysdeps/ia64/fpu/s_floor.S (floor): Likewise. + * sysdeps/ia64/fpu/s_fma.S (fma): Likewise. + * sysdeps/ia64/fpu/s_fmax.S (fmax): Likewise. + * sysdeps/ia64/fpu/s_frexp.c (frexp): Likewise. + * sysdeps/ia64/fpu/s_ldexp.c (ldexp): Likewise. + * sysdeps/ia64/fpu/s_log1p.S (log1p): Likewise. + * sysdeps/ia64/fpu/s_logb.S (logb): Likewise. + * sysdeps/ia64/fpu/s_modf.S (modf): Likewise. + * sysdeps/ia64/fpu/s_nearbyint.S (nearbyint): Likewise. + * sysdeps/ia64/fpu/s_nextafter.S (nextafter): Likewise. + * sysdeps/ia64/fpu/s_rint.S (rint): Likewise. + * sysdeps/ia64/fpu/s_round.S (round): Likewise. + * sysdeps/ia64/fpu/s_scalbn.c (scalbn): Define using + libm_alias_double. + * sysdeps/ia64/fpu/s_tan.S (tan): Use libm_alias_double_other. + * sysdeps/ia64/fpu/s_tanh.S (tanh): Likewise. + * sysdeps/ia64/fpu/s_trunc.S (trunc): Likewise. + * sysdeps/ia64/fpu/w_lgamma_main.c + [BUILD_LGAMMA && !USE_AS_COMPAT] (lgamma): Likewise. + * sysdeps/ia64/fpu/w_tgamma_compat.S (tgamma): Likewise. + 2017-11-28 John David Anglin <danglin@gcc.gnu.org> * sysdeps/hppa/start.S (_start): Check PIC instead of SHARED. Load diff --git a/sysdeps/ia64/fpu/e_acos.S b/sysdeps/ia64/fpu/e_acos.S index c2b31ab85e..ad7901612c 100644 --- a/sysdeps/ia64/fpu/e_acos.S +++ b/sysdeps/ia64/fpu/e_acos.S @@ -822,6 +822,7 @@ acos_abs_gt_1: } ;; GLOBAL_LIBM_END(acos) +libm_alias_double_other (acos, acos) diff --git a/sysdeps/ia64/fpu/e_acosh.S b/sysdeps/ia64/fpu/e_acosh.S index fb25fa0053..f8c75e427d 100644 --- a/sysdeps/ia64/fpu/e_acosh.S +++ b/sysdeps/ia64/fpu/e_acosh.S @@ -1139,6 +1139,7 @@ ACOSH_LESS_ONE: ;; GLOBAL_LIBM_END(acosh) +libm_alias_double_other (acosh, acosh) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_asin.S b/sysdeps/ia64/fpu/e_asin.S index f995c597f4..4de08e59d5 100644 --- a/sysdeps/ia64/fpu/e_asin.S +++ b/sysdeps/ia64/fpu/e_asin.S @@ -798,6 +798,7 @@ asin_abs_gt_1: } ;; GLOBAL_LIBM_END(asin) +libm_alias_double_other (asin, asin) diff --git a/sysdeps/ia64/fpu/e_atan2.S b/sysdeps/ia64/fpu/e_atan2.S index 7a17fbfed4..1786794e7d 100644 --- a/sysdeps/ia64/fpu/e_atan2.S +++ b/sysdeps/ia64/fpu/e_atan2.S @@ -985,6 +985,7 @@ ATAN2_ERROR: ;; } GLOBAL_IEEE754_END(atan2) +libm_alias_double_other (__atan2, atan2) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_atanh.S b/sysdeps/ia64/fpu/e_atanh.S index 4ae5ee6926..45760af71d 100644 --- a/sysdeps/ia64/fpu/e_atanh.S +++ b/sysdeps/ia64/fpu/e_atanh.S @@ -1008,6 +1008,7 @@ atanh_ge_one: ;; GLOBAL_LIBM_END(atanh) +libm_alias_double_other (atanh, atanh) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_cosh.S b/sysdeps/ia64/fpu/e_cosh.S index 885456b389..dbac1804ff 100644 --- a/sysdeps/ia64/fpu/e_cosh.S +++ b/sysdeps/ia64/fpu/e_cosh.S @@ -811,6 +811,7 @@ COSH_UNORM: ;; GLOBAL_IEEE754_END(cosh) +libm_alias_double_other (__cosh, cosh) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_exp.S b/sysdeps/ia64/fpu/e_exp.S index f17bc26081..c8cebeb177 100644 --- a/sysdeps/ia64/fpu/e_exp.S +++ b/sysdeps/ia64/fpu/e_exp.S @@ -738,6 +738,7 @@ EXP_UNDERFLOW_ZERO: ;; GLOBAL_IEEE754_END(exp) +libm_alias_double_other (__exp, exp) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_exp10.S b/sysdeps/ia64/fpu/e_exp10.S index 7b0737184b..f12344bee3 100644 --- a/sysdeps/ia64/fpu/e_exp10.S +++ b/sysdeps/ia64/fpu/e_exp10.S @@ -536,6 +536,7 @@ OUT_RANGE_exp10: ;; GLOBAL_IEEE754_END(exp10) +libm_alias_double_other (__exp10, exp10) #if SHLIB_COMPAT (libm, GLIBC_2_1, GLIBC_2_27) compat_symbol (libm, exp10, pow10, GLIBC_2_2) #endif diff --git a/sysdeps/ia64/fpu/e_exp2.S b/sysdeps/ia64/fpu/e_exp2.S index 54f652e384..18711866a1 100644 --- a/sysdeps/ia64/fpu/e_exp2.S +++ b/sysdeps/ia64/fpu/e_exp2.S @@ -494,6 +494,7 @@ OUT_RANGE_exp2: ;; GLOBAL_LIBM_END(exp2) +libm_alias_double_other (exp2, exp2) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_fmod.S b/sysdeps/ia64/fpu/e_fmod.S index c29056e34a..3eaaf49fbb 100644 --- a/sysdeps/ia64/fpu/e_fmod.S +++ b/sysdeps/ia64/fpu/e_fmod.S @@ -499,6 +499,7 @@ FMOD_Y_ZERO: } GLOBAL_IEEE754_END(fmod) +libm_alias_double_other (__fmod, fmod) LOCAL_LIBM_ENTRY(__libm_error_region) .prologue diff --git a/sysdeps/ia64/fpu/e_hypot.S b/sysdeps/ia64/fpu/e_hypot.S index 146bb2fb1b..34c2761dc3 100644 --- a/sysdeps/ia64/fpu/e_hypot.S +++ b/sysdeps/ia64/fpu/e_hypot.S @@ -385,6 +385,7 @@ GLOBAL_IEEE754_ENTRY(hypot) (p9) br.ret.sptk b0;; } GLOBAL_IEEE754_END(hypot) +libm_alias_double_other (__hypot, hypot) LOCAL_LIBM_ENTRY(__libm_error_region) .prologue diff --git a/sysdeps/ia64/fpu/e_lgamma_r.c b/sysdeps/ia64/fpu/e_lgamma_r.c index cb9efbfe02..8ae6df3419 100644 --- a/sysdeps/ia64/fpu/e_lgamma_r.c +++ b/sysdeps/ia64/fpu/e_lgamma_r.c @@ -60,7 +60,7 @@ double __ieee754_lgamma_r(double x, int* signgam) { return __libm_lgamma(x, signgam, sizeof(*signgam)); } -weak_alias (__ieee754_lgamma_r, lgamma_r) +libm_alias_double_r (__ieee754_lgamma, lgamma, _r) #ifndef _LIBC double __ieee754_gamma_r(double x, int* signgam) diff --git a/sysdeps/ia64/fpu/e_log.S b/sysdeps/ia64/fpu/e_log.S index 50eed956da..0b63ec43c5 100644 --- a/sysdeps/ia64/fpu/e_log.S +++ b/sysdeps/ia64/fpu/e_log.S @@ -1386,6 +1386,7 @@ GLOBAL_IEEE754_ENTRY(log10) br.cond.sptk log_log10_common };; GLOBAL_IEEE754_END(log10) +libm_alias_double_other (__log10, log10) GLOBAL_IEEE754_ENTRY(log) @@ -1668,6 +1669,7 @@ log_libm_err: nop.i 0 };; GLOBAL_IEEE754_END(log) +libm_alias_double_other (__log, log) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_log2.S b/sysdeps/ia64/fpu/e_log2.S index c2b37a65ce..17893a2ede 100644 --- a/sysdeps/ia64/fpu/e_log2.S +++ b/sysdeps/ia64/fpu/e_log2.S @@ -654,6 +654,7 @@ SPECIAL_LOG2: } GLOBAL_LIBM_END(log2) +libm_alias_double_other (log2, log2) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_pow.S b/sysdeps/ia64/fpu/e_pow.S index 765f509695..3b402f3f14 100644 --- a/sysdeps/ia64/fpu/e_pow.S +++ b/sysdeps/ia64/fpu/e_pow.S @@ -2234,6 +2234,7 @@ POW_OVER_UNDER_ERROR: ;; GLOBAL_LIBM_END(pow) +libm_alias_double_other (pow, pow) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_remainder.S b/sysdeps/ia64/fpu/e_remainder.S index 3cd5aac578..acefe7b9c9 100644 --- a/sysdeps/ia64/fpu/e_remainder.S +++ b/sysdeps/ia64/fpu/e_remainder.S @@ -529,6 +529,7 @@ EXP_ERROR_RETURN: } GLOBAL_IEEE754_END(remainder) +libm_alias_double_other (__remainder, remainder) weak_alias (__remainder, drem) diff --git a/sysdeps/ia64/fpu/e_sinh.S b/sysdeps/ia64/fpu/e_sinh.S index f60907b72b..2167c78edc 100644 --- a/sysdeps/ia64/fpu/e_sinh.S +++ b/sysdeps/ia64/fpu/e_sinh.S @@ -850,6 +850,7 @@ SINH_UNORM: ;; GLOBAL_IEEE754_END(sinh) +libm_alias_double_other (__sinh, sinh) LOCAL_LIBM_ENTRY(__libm_error_region) diff --git a/sysdeps/ia64/fpu/e_sqrt.S b/sysdeps/ia64/fpu/e_sqrt.S index da4e8ccb6d..38d8a505ee 100644 --- a/sysdeps/ia64/fpu/e_sqrt.S +++ b/sysdeps/ia64/fpu/e_sqrt.S @@ -252,6 +252,7 @@ GLOBAL_IEEE754_ENTRY(sqrt) } // END DOUBLE PRECISION MINIMUM LATENCY SQUARE ROOT ALGORITHM GLOBAL_IEEE754_END(sqrt) +libm_alias_double_other (__sqrt, sqrt) // Stack operations when calling error support. // (1) (2) (3) (call) (4) diff --git a/sysdeps/ia64/fpu/libm-symbols.h b/sysdeps/ia64/fpu/libm-symbols.h index fbc840577f..fe6451b432 100644 --- a/sysdeps/ia64/fpu/libm-symbols.h +++ b/sysdeps/ia64/fpu/libm-symbols.h @@ -2,6 +2,7 @@ # include <sysdep.h> # undef ret /* get rid of the stupid "ret" macro; it breaks br.ret */ +# include <libm-alias-double.h> # include <libm-alias-ldouble.h> /* Support for compatible assembler handling. */ diff --git a/sysdeps/ia64/fpu/libm_sincos.S b/sysdeps/ia64/fpu/libm_sincos.S index c2a9f7262e..85ccd5f56a 100644 --- a/sysdeps/ia64/fpu/libm_sincos.S +++ b/sysdeps/ia64/fpu/libm_sincos.S @@ -425,6 +425,7 @@ GLOBAL_IEEE754_ENTRY(sincos) br.cond.sptk _CIS_COMMON };; GLOBAL_IEEE754_END(sincos) +libm_alias_double_other (__sincos, sincos) GLOBAL_LIBM_ENTRY(__libm_sincos) // cis_GR_sig_inv_pi_by_16 = significand of 16/pi diff --git a/sysdeps/ia64/fpu/s_asinh.S b/sysdeps/ia64/fpu/s_asinh.S index c5aaee7072..b57c015b0b 100644 --- a/sysdeps/ia64/fpu/s_asinh.S +++ b/sysdeps/ia64/fpu/s_asinh.S @@ -1135,3 +1135,4 @@ ASINH_UNORM: ;; GLOBAL_LIBM_END(asinh) +libm_alias_double_other (asinh, asinh) |
