+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
}
;;
GLOBAL_LIBM_END(acos)
+libm_alias_double_other (acos, acos)
;;
GLOBAL_LIBM_END(acosh)
+libm_alias_double_other (acosh, acosh)
LOCAL_LIBM_ENTRY(__libm_error_region)
}
;;
GLOBAL_LIBM_END(asin)
+libm_alias_double_other (asin, asin)
;;
}
GLOBAL_IEEE754_END(atan2)
+libm_alias_double_other (__atan2, atan2)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
GLOBAL_LIBM_END(atanh)
+libm_alias_double_other (atanh, atanh)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
GLOBAL_IEEE754_END(cosh)
+libm_alias_double_other (__cosh, cosh)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
GLOBAL_IEEE754_END(exp)
+libm_alias_double_other (__exp, exp)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
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
;;
GLOBAL_LIBM_END(exp2)
+libm_alias_double_other (exp2, exp2)
LOCAL_LIBM_ENTRY(__libm_error_region)
}
GLOBAL_IEEE754_END(fmod)
+libm_alias_double_other (__fmod, fmod)
LOCAL_LIBM_ENTRY(__libm_error_region)
.prologue
(p9) br.ret.sptk b0;;
}
GLOBAL_IEEE754_END(hypot)
+libm_alias_double_other (__hypot, hypot)
LOCAL_LIBM_ENTRY(__libm_error_region)
.prologue
{
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)
br.cond.sptk log_log10_common
};;
GLOBAL_IEEE754_END(log10)
+libm_alias_double_other (__log10, log10)
GLOBAL_IEEE754_ENTRY(log)
nop.i 0
};;
GLOBAL_IEEE754_END(log)
+libm_alias_double_other (__log, log)
LOCAL_LIBM_ENTRY(__libm_error_region)
}
GLOBAL_LIBM_END(log2)
+libm_alias_double_other (log2, log2)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
GLOBAL_LIBM_END(pow)
+libm_alias_double_other (pow, pow)
LOCAL_LIBM_ENTRY(__libm_error_region)
}
GLOBAL_IEEE754_END(remainder)
+libm_alias_double_other (__remainder, remainder)
weak_alias (__remainder, drem)
;;
GLOBAL_IEEE754_END(sinh)
+libm_alias_double_other (__sinh, sinh)
LOCAL_LIBM_ENTRY(__libm_error_region)
}
// 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)
# 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. */
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
;;
GLOBAL_LIBM_END(asinh)
+libm_alias_double_other (asinh, asinh)
}
GLOBAL_LIBM_END(atan)
+libm_alias_double_other (atan, atan)
GLOBAL_LIBM_END(cbrt)
+libm_alias_double_other (cbrt, cbrt)
;;
GLOBAL_LIBM_END(ceil)
+libm_alias_double_other (ceil, ceil)
strong_alias (__copysign, __libm_copysignf)
strong_alias (__copysign, __libm_copysignl)
-weak_alias (__copysign, copysign)
+libm_alias_double (__copysign, copysign)
weak_alias (__copysignf, copysignf)
libm_alias_ldouble (__copysign, copysign)
;;
GLOBAL_IEEE754_END(sin)
+libm_alias_double_other (__sin, sin)
GLOBAL_IEEE754_ENTRY(cos)
};;
GLOBAL_IEEE754_END(cos)
+libm_alias_double_other (__cos, cos)
//////////// x >= 2^27 - large arguments routine call ////////////
LOCAL_LIBM_ENTRY(__libm_callout_sincos)
;;
GLOBAL_LIBM_END(erf)
+libm_alias_double_other (erf, erf)
};;
GLOBAL_LIBM_END(erfc)
+libm_alias_double_other (erfc, erfc)
// call via (p15) br.cond.spnt __libm_error_region
// for x > ARG_ASYMP = 28.0
;;
GLOBAL_IEEE754_END(expm1)
+libm_alias_double_other (__expm1, expm1)
LOCAL_LIBM_ENTRY(__libm_error_region)
}
GLOBAL_IEEE754_END(fabs)
+libm_alias_double_other (__fabs, fabs)
;;
GLOBAL_LIBM_END(fdim)
+libm_alias_double_other (fdim, fdim)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
GLOBAL_IEEE754_END(floor)
+libm_alias_double_other (__floor, floor)
;;
GLOBAL_LIBM_END(fma)
+libm_alias_double_other (fma, fma)
;;
GLOBAL_LIBM_END(fmax)
+libm_alias_double_other (fmax, fmax)
#endif
}
+libm_alias_double_other (frexp, frexp)
#endif
}
+libm_alias_double_other (ldexp, ldexp)
;;
GLOBAL_IEEE754_END(log1p)
+libm_alias_double_other (__log1p, log1p)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
GLOBAL_LIBM_END(logb)
+libm_alias_double_other (logb, logb)
LOCAL_LIBM_ENTRY(__libm_error_region)
}
GLOBAL_LIBM_END(modf)
+libm_alias_double_other (modf, modf)
;;
GLOBAL_LIBM_END(nearbyint)
+libm_alias_double_other (nearbyint, nearbyint)
;;
GLOBAL_LIBM_END(nextafter)
+libm_alias_double_other (nextafter, nextafter)
LOCAL_LIBM_ENTRY(__libm_error_region)
;;
GLOBAL_IEEE754_END(rint)
+libm_alias_double_other (__rint, rint)
;;
GLOBAL_LIBM_END(round)
+libm_alias_double_other (round, round)
}
-weak_alias (__scalbn, scalbn)
+libm_alias_double (__scalbn, scalbn)
br.ret.sptk b0 ;;
}
GLOBAL_IEEE754_END(tan)
+libm_alias_double_other (__tan, tan)
LOCAL_LIBM_ENTRY(__libm_callout)
};;
GLOBAL_LIBM_END(tanh)
+libm_alias_double_other (tanh, tanh)
;;
GLOBAL_LIBM_END(trunc)
+libm_alias_double_other (trunc, trunc)
compat_symbol (libm, __lgamma_compat, lgamma, LGAMMA_OLD_VER);
# else
versioned_symbol (libm, __ieee754_lgamma, lgamma, LGAMMA_NEW_VER);
+libm_alias_double_other (__ieee754_lgamma, lgamma)
# endif
# if GAMMA_ALIAS
strong_alias (LGFUNC (lgamma), __ieee754_gamma)
};;
GLOBAL_LIBM_END(tgamma)
+libm_alias_double_other (tgamma, tgamma)
LOCAL_LIBM_ENTRY(__libm_error_region)
.prologue