This is the mail archive of the
libc-alpha@sourceware.org
mailing list for the glibc project.
[PATCH 0/9] Optimized expf, exp2f, logf, log2f and powf
- From: Szabolcs Nagy <szabolcs dot nagy at arm dot com>
- To: GNU C Library <libc-alpha at sourceware dot org>
- Cc: nd at arm dot com
- Date: Tue, 19 Sep 2017 13:49:03 +0100
- Subject: [PATCH 0/9] Optimized expf, exp2f, logf, log2f and powf
- Authentication-results: sourceware.org; auth=none
- Authentication-results: spf=none (sender IP is ) smtp.mailfrom=Szabolcs dot Nagy at arm dot com;
- Nodisclaimer: True
- Spamdiagnosticmetadata: NSPM
- Spamdiagnosticoutput: 1:99
updated patchset, now with logf, log2f and powf too.
some libm_alias_float changes in math/w_*_compat.c got reverted.
Szabolcs Nagy (9):
Optimized generic expf and exp2f with wrappers
New expf and exp2f version without SVID compat wrapper
Do not wrap expf and exp2f
New generic logf
New generic log2f
New generic powf
New symbol version for logf, log2f and powf without SVID compat
Do not wrap logf, log2f and powf
AArch64: update libm-test-ulps
math/Makefile | 3 +-
math/Versions | 3 +
math/w_exp2f.c | 7 +
math/w_exp2f_compat.c | 6 +-
math/w_expf.c | 7 +
math/w_expf_compat.c | 7 +-
math/w_log2f.c | 7 +
math/w_log2f_compat.c | 6 +-
math/w_logf.c | 7 +
math/w_logf_compat.c | 6 +-
math/w_powf.c | 7 +
math/w_powf_compat.c | 6 +-
sysdeps/aarch64/fpu/math_private.h | 20 ++
sysdeps/aarch64/libm-test-ulps | 10 +-
sysdeps/i386/fpu/e_exp2f_data.c | 1 +
sysdeps/i386/fpu/e_log2f_data.c | 1 +
sysdeps/i386/fpu/e_logf_data.c | 1 +
sysdeps/i386/fpu/e_powf_log2_data.c | 1 +
sysdeps/i386/fpu/math_errf.c | 1 +
sysdeps/i386/fpu/w_exp2f.c | 1 +
sysdeps/i386/fpu/w_expf.c | 1 +
sysdeps/i386/fpu/w_log2f.c | 1 +
sysdeps/i386/fpu/w_logf.c | 1 +
sysdeps/i386/fpu/w_powf.c | 1 +
sysdeps/i386/i686/fpu/multiarch/w_expf.c | 1 +
sysdeps/ia64/fpu/e_exp2f.S | 10 +-
sysdeps/ia64/fpu/e_exp2f_data.c | 1 +
sysdeps/ia64/fpu/e_expf.S | 6 +
sysdeps/ia64/fpu/e_log2f.S | 10 +-
sysdeps/ia64/fpu/e_log2f_data.c | 1 +
sysdeps/ia64/fpu/e_logf.S | 6 +
sysdeps/ia64/fpu/e_logf_data.c | 1 +
sysdeps/ia64/fpu/e_powf.S | 10 +-
sysdeps/ia64/fpu/e_powf_log2_data.c | 1 +
sysdeps/ia64/fpu/math_errf.c | 1 +
sysdeps/ieee754/flt-32/e_exp2f.c | 177 ++++------
sysdeps/ieee754/flt-32/e_exp2f_data.c | 44 +++
sysdeps/ieee754/flt-32/e_expf.c | 193 +++++-----
sysdeps/ieee754/flt-32/e_log2f.c | 153 ++++----
sysdeps/ieee754/flt-32/e_log2f_data.c | 44 +++
sysdeps/ieee754/flt-32/e_logf.c | 153 ++++----
sysdeps/ieee754/flt-32/e_logf_data.c | 44 +++
sysdeps/ieee754/flt-32/e_powf.c | 393 ++++++++++-----------
sysdeps/ieee754/flt-32/e_powf_log2_data.c | 45 +++
sysdeps/ieee754/flt-32/math_config.h | 164 +++++++++
sysdeps/ieee754/flt-32/math_errf.c | 76 ++++
sysdeps/ieee754/flt-32/t_exp2f.h | 351 ------------------
sysdeps/ieee754/flt-32/w_exp2f.c | 1 +
sysdeps/ieee754/flt-32/w_expf.c | 1 +
sysdeps/ieee754/flt-32/w_log2f.c | 1 +
sysdeps/ieee754/flt-32/w_logf.c | 1 +
sysdeps/ieee754/flt-32/w_powf.c | 1 +
sysdeps/m68k/m680x0/fpu/e_exp2f_data.c | 1 +
sysdeps/m68k/m680x0/fpu/e_log2f_data.c | 1 +
sysdeps/m68k/m680x0/fpu/e_logf_data.c | 1 +
sysdeps/m68k/m680x0/fpu/e_powf_log2_data.c | 1 +
sysdeps/m68k/m680x0/fpu/math_errf.c | 1 +
sysdeps/m68k/m680x0/fpu/w_exp2f.c | 1 +
sysdeps/m68k/m680x0/fpu/w_expf.c | 1 +
sysdeps/m68k/m680x0/fpu/w_log2f.c | 1 +
sysdeps/m68k/m680x0/fpu/w_logf.c | 1 +
sysdeps/m68k/m680x0/fpu/w_powf.c | 1 +
.../powerpc/powerpc64/fpu/multiarch/e_expf-ppc64.c | 9 +-
sysdeps/powerpc/powerpc64/fpu/multiarch/w_expf.c | 1 +
sysdeps/unix/sysv/linux/aarch64/libm.abilist | 6 +
sysdeps/unix/sysv/linux/alpha/libm.abilist | 6 +
sysdeps/unix/sysv/linux/arm/libm.abilist | 6 +
sysdeps/unix/sysv/linux/hppa/libm.abilist | 6 +
sysdeps/unix/sysv/linux/i386/libm.abilist | 6 +
sysdeps/unix/sysv/linux/ia64/libm.abilist | 6 +
sysdeps/unix/sysv/linux/m68k/coldfire/libm.abilist | 6 +
sysdeps/unix/sysv/linux/m68k/m680x0/libm.abilist | 6 +
sysdeps/unix/sysv/linux/microblaze/libm.abilist | 6 +
sysdeps/unix/sysv/linux/mips/mips32/libm.abilist | 6 +
sysdeps/unix/sysv/linux/mips/mips64/libm.abilist | 6 +
sysdeps/unix/sysv/linux/nios2/libm.abilist | 6 +
.../sysv/linux/powerpc/powerpc32/fpu/libm.abilist | 6 +
.../linux/powerpc/powerpc32/nofpu/libm.abilist | 6 +
.../sysv/linux/powerpc/powerpc64/libm-le.abilist | 6 +
.../unix/sysv/linux/powerpc/powerpc64/libm.abilist | 6 +
sysdeps/unix/sysv/linux/s390/s390-32/libm.abilist | 6 +
sysdeps/unix/sysv/linux/s390/s390-64/libm.abilist | 6 +
sysdeps/unix/sysv/linux/sh/libm.abilist | 6 +
sysdeps/unix/sysv/linux/sparc/sparc32/libm.abilist | 6 +
sysdeps/unix/sysv/linux/sparc/sparc64/libm.abilist | 6 +
.../sysv/linux/tile/tilegx/tilegx32/libm.abilist | 6 +
.../sysv/linux/tile/tilegx/tilegx64/libm.abilist | 6 +
sysdeps/unix/sysv/linux/tile/tilepro/libm.abilist | 6 +
sysdeps/unix/sysv/linux/x86_64/64/libm.abilist | 6 +
sysdeps/unix/sysv/linux/x86_64/x32/libm.abilist | 6 +
sysdeps/x86_64/fpu/w_expf.c | 1 +
91 files changed, 1235 insertions(+), 944 deletions(-)
create mode 100644 math/w_exp2f.c
create mode 100644 math/w_expf.c
create mode 100644 math/w_log2f.c
create mode 100644 math/w_logf.c
create mode 100644 math/w_powf.c
create mode 100644 sysdeps/i386/fpu/e_exp2f_data.c
create mode 100644 sysdeps/i386/fpu/e_log2f_data.c
create mode 100644 sysdeps/i386/fpu/e_logf_data.c
create mode 100644 sysdeps/i386/fpu/e_powf_log2_data.c
create mode 100644 sysdeps/i386/fpu/math_errf.c
create mode 100644 sysdeps/i386/fpu/w_exp2f.c
create mode 100644 sysdeps/i386/fpu/w_expf.c
create mode 100644 sysdeps/i386/fpu/w_log2f.c
create mode 100644 sysdeps/i386/fpu/w_logf.c
create mode 100644 sysdeps/i386/fpu/w_powf.c
create mode 100644 sysdeps/i386/i686/fpu/multiarch/w_expf.c
create mode 100644 sysdeps/ia64/fpu/e_exp2f_data.c
create mode 100644 sysdeps/ia64/fpu/e_log2f_data.c
create mode 100644 sysdeps/ia64/fpu/e_logf_data.c
create mode 100644 sysdeps/ia64/fpu/e_powf_log2_data.c
create mode 100644 sysdeps/ia64/fpu/math_errf.c
create mode 100644 sysdeps/ieee754/flt-32/e_exp2f_data.c
create mode 100644 sysdeps/ieee754/flt-32/e_log2f_data.c
create mode 100644 sysdeps/ieee754/flt-32/e_logf_data.c
create mode 100644 sysdeps/ieee754/flt-32/e_powf_log2_data.c
create mode 100644 sysdeps/ieee754/flt-32/math_config.h
create mode 100644 sysdeps/ieee754/flt-32/math_errf.c
delete mode 100644 sysdeps/ieee754/flt-32/t_exp2f.h
create mode 100644 sysdeps/ieee754/flt-32/w_exp2f.c
create mode 100644 sysdeps/ieee754/flt-32/w_expf.c
create mode 100644 sysdeps/ieee754/flt-32/w_log2f.c
create mode 100644 sysdeps/ieee754/flt-32/w_logf.c
create mode 100644 sysdeps/ieee754/flt-32/w_powf.c
create mode 100644 sysdeps/m68k/m680x0/fpu/e_exp2f_data.c
create mode 100644 sysdeps/m68k/m680x0/fpu/e_log2f_data.c
create mode 100644 sysdeps/m68k/m680x0/fpu/e_logf_data.c
create mode 100644 sysdeps/m68k/m680x0/fpu/e_powf_log2_data.c
create mode 100644 sysdeps/m68k/m680x0/fpu/math_errf.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_exp2f.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_expf.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_log2f.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_logf.c
create mode 100644 sysdeps/m68k/m680x0/fpu/w_powf.c
create mode 100644 sysdeps/powerpc/powerpc64/fpu/multiarch/w_expf.c
create mode 100644 sysdeps/x86_64/fpu/w_expf.c
--
2.11.0