glibc/sysdeps/m68k/m680x0/fpu
Szabolcs Nagy f29b7c492d Remove the error handling wrapper from log
Introduce new log symbol version that doesn't do SVID compatible error
handling.  The standard errno and fp exception based error handling is
inline in the new code and does not have significant overhead.

The wrapper is disabled for sysdeps/ieee754/dbl-64 by using empty
w_log.c and enabled for targets with their own log implementation by
including math/w_log.c.

The compatibility symbol version still uses the wrapper with SVID error
handling around the new code.  There is no new symbol version nor
compatibility code on !LIBM_SVID_COMPAT targets (e.g. riscv).

On targets where previously logl was an alias of log, now it points to
the compatibility symbol with the wrapper, because it still need the
SVID compatible error handling.  This affects NO_LONG_DOUBLE (e.g. arm)
and LONG_DOUBLE_COMPAT (e.g. alpha) targets as well.

The __log_finite symbol is now an alias of log.  Both __log_finite and
log set errno and thus not const functions.

The ia64 asm is changed so the compat and new symbol versions map to the
same address.

On x86_64 #include <math.h> was added before macro definitions that may
affect that header.

Tested with build-many-glibcs.py.

	* math/Versions (GLIBC_2.29): Add log.
	* math/w_log_compat.c (__log_compat): Change to versioned compat
	symbol.
	* math/w_log.c: New file.
	* sysdeps/i386/fpu/w_log.c: New file.
	* sysdeps/ia64/fpu/e_log.S: Update.
	* sysdeps/ieee754/dbl-64/e_log.c (__ieee754_log): Rename to __log
	and add necessary aliases.
	* sysdeps/ieee754/dbl-64/w_log.c: New file.
	* sysdeps/m68k/m680x0/fpu/w_log.c: New file.
	* sysdeps/mach/hurd/i386/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/aarch64/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/alpha/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/arm/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/hppa/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/i386/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/ia64/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/microblaze/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/mips/mips32/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/mips/mips64/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/nios2/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/fpu/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/powerpc/powerpc32/nofpu/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/libm-le.abilist: Update.
	* sysdeps/unix/sysv/linux/powerpc/powerpc64/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/sh/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/x86_64/64/libm.abilist: Update.
	* sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist: Update.
	* sysdeps/x86_64/fpu/multiarch/e_log-avx.c (__ieee754_log): Rename to
	__log.
	* sysdeps/x86_64/fpu/multiarch/e_log-fma.c (__ieee754_log): Likewise.
	* sysdeps/x86_64/fpu/multiarch/e_log-fma4.c (__ieee754_log): Likewise.
	* sysdeps/x86_64/fpu/multiarch/e_log.c (__ieee754_log): Likewise.
	* sysdeps/x86_64/fpu/multiarch/w_log.c: New file.
2018-11-21 09:56:27 +00:00
..
bits Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
branred.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
doasin.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
dosincos.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_acos.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
e_acosf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_acosl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_asin.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_asinf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_asinl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_atan2.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
e_atan2f.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_atan2l.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_atanh.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_atanhf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_atanhl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_cosh.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_coshf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_coshl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_exp2.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_exp2f_data.c Optimized generic expf and exp2f with wrappers 2017-09-25 10:44:39 +01:00
e_exp2f.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_exp2l.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_exp10.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_exp10f.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_exp10l.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_exp_data.c Add new exp and exp2 implementations 2018-09-05 16:22:00 +01:00
e_exp.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_expf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_expl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_fmod.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
e_fmodf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_fmodl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_ilogb.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
e_ilogbf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_ilogbl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_log2_data.c Add new log2 implementation 2018-09-12 17:36:33 +01:00
e_log2.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_log2f_data.c New generic log2f 2017-09-29 17:17:41 +01:00
e_log2f.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_log2l.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_log10.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_log10f.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_log10l.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_log_data.c Add new log implementation 2018-09-12 17:33:30 +01:00
e_log.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_logf_data.c New generic logf 2017-09-29 11:46:46 +01:00
e_logf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_logl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_pow_log_data.c Add new pow implementation 2018-09-19 10:04:51 +01:00
e_pow.c Rename all __ieee754_sqrt(f/l) calls to sqrt(f/l) 2018-03-15 19:21:36 +00:00
e_powf_log2_data.c New generic powf 2017-09-29 17:30:53 +01:00
e_powf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_powl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_rem_pio2l.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_remainder.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_remainderf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_remainderl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_scalb.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
e_scalbf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_scalbl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_sinh.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_sinhf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_sinhl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_sqrt.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_sqrtf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
e_sqrtl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
fraiseexcpt.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
k_cosl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
k_rem_pio2.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
k_sinl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
k_tanf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
k_tanl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
libm-test-ulps Remove very old libm-test-ulps entries. 2017-01-20 23:58:49 +00:00
libm-test-ulps-name Do not hardcode platform names in manual/libm-err-tab.pl (bug 14139). 2016-11-04 16:49:06 +00:00
math_err.c Add new exp and exp2 implementations 2018-09-05 16:22:00 +01:00
math_errf.c Optimized generic expf and exp2f with wrappers 2017-09-25 10:44:39 +01:00
math-barriers.h Move math_opt_barrier, math_force_eval to separate math-barriers.h. 2018-05-09 19:45:47 +00:00
mathimpl.h Revert m68k __ieee754_sqrt change 2018-03-16 14:25:41 +00:00
mpa.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
mpatan2.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
mpatan.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
mpsqrt.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
mptan.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_atan_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_atan.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_atanf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_atanl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_ccosh_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_ceil_template.c Use ceil functions not __ceil functions in glibc libm. 2018-09-17 20:42:06 +00:00
s_ceil.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_ceilf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_ceill.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_cexp_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_cos_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_cos.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_cosf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_cosl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_csin_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_csinh_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_expm1_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_expm1.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_expm1f.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_expm1l.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_fabs_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_fabs.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_fabsf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_fabsl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_finite.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_finitef.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_finitel.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_floor_template.c Use floor functions not __floor functions in glibc libm. 2018-09-14 13:09:01 +00:00
s_floor.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_floorf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_floorl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_fpclassifyl.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_frexp_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_frexp.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_frexpf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_frexpl.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_isinf.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_isinff.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_isinfl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_isnan.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_isnanf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_isnanl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_llrint.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_llrintf.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_llrintl.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_log1p.c m68k: Reorganize log1p and significand implementations 2018-06-22 21:34:28 -03:00
s_log1pf.c m68k: Reorganize log1p and significand implementations 2018-06-22 21:34:28 -03:00
s_log1pl.c m68k: Reorganize log1p and significand implementations 2018-06-22 21:34:28 -03:00
s_logbl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_lrint_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_lrint.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_lrintf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_lrintl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_modf_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_modf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_modff.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_modfl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_nearbyint_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_nearbyint.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_nearbyintf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_nearbyintl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_nextafterl.c Do not include math-barriers.h in math_private.h. 2018-05-11 15:11:38 +00:00
s_remquo_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_remquo.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_remquof.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_remquol.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_rint_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_rint.c Use rint functions not __rint functions in glibc libm. 2018-09-14 13:10:39 +00:00
s_rintf.c Use rint functions not __rint functions in glibc libm. 2018-09-14 13:10:39 +00:00
s_rintl.c Use rint functions not __rint functions in glibc libm. 2018-09-14 13:10:39 +00:00
s_scalbln.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_scalblnf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_scalblnl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_scalbn.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_scalbnf.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_scalbnl.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
s_significand.c m68k: Reorganize log1p and significand implementations 2018-06-22 21:34:28 -03:00
s_significandf.c m68k: Reorganize log1p and significand implementations 2018-06-22 21:34:28 -03:00
s_significandl.c m68k: Reorganize log1p and significand implementations 2018-06-22 21:34:28 -03:00
s_sin_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_sin.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_sincos_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_sincos.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_sincosf_data.c Improve performance of sincosf 2018-08-10 17:34:39 +01:00
s_sincosf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_sincosl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_sinf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_sinl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_tan_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_tan.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_tanf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_tanh_template.c Update copyright dates with scripts/update-copyrights. 2018-01-01 00:32:25 +00:00
s_tanh.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_tanhf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_tanhl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_tanl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_trunc_template.c Use trunc functions not __trunc functions in glibc libm. 2018-09-20 21:11:10 +00:00
s_trunc.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_truncf.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
s_truncl.c Rework m68k libm functions to use declare_mgen_alias. 2017-11-30 22:39:07 +00:00
sincos32.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
sincostab.c Move m68k from ports to libc 2014-02-10 20:22:40 +01:00
w_exp2.c Remove the error handling wrapper from exp and exp2 2018-11-21 09:55:02 +00:00
w_exp2f.c Do not wrap expf and exp2f 2017-10-02 14:38:54 +01:00
w_exp.c Remove the error handling wrapper from exp and exp2 2018-11-21 09:55:02 +00:00
w_expf.c Do not wrap expf and exp2f 2017-10-02 14:38:54 +01:00
w_log2f.c Do not wrap logf, log2f and powf 2017-10-02 14:39:38 +01:00
w_log.c Remove the error handling wrapper from log 2018-11-21 09:56:27 +00:00
w_logf.c Do not wrap logf, log2f and powf 2017-10-02 14:39:38 +01:00
w_powf.c Do not wrap logf, log2f and powf 2017-10-02 14:39:38 +01:00