about summary refs log tree commit diff
path: root/ChangeLog
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-10-22 07:49:36 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-10-22 07:49:55 -0700
commite1f59bebd885c442c14df3554da9fe08792ce7ce (patch)
tree2a8d4b88a4373cc77e4085d050d806b7bd216549 /ChangeLog
parenta159b53fa059947cc2548e3b0d5bdcf7b9630ba8 (diff)
downloadglibc-e1f59bebd885c442c14df3554da9fe08792ce7ce.tar.gz
glibc-e1f59bebd885c442c14df3554da9fe08792ce7ce.tar.xz
glibc-e1f59bebd885c442c14df3554da9fe08792ce7ce.zip
x86-64: Replace assembly versions of e_expf with generic e_expf.c
This patch replaces x86-64 assembly versions of e_expf with generic
e_expf.c.  For workload-spec2017.wrf, on Nehalem, it improves
performance by:

                           Before            After     Improvement
reciprocal-throughput      36.039           20.7749       73%
latency                    58.8096          40.8715       43%

On Skylake, it improves

                           Before            After     Improvement
reciprocal-throughput      18.4436          11.1693       65%
latency                    47.5162          37.5411       26%

	* sysdeps/x86_64/fpu/e_expf.S: Removed.
	* sysdeps/x86_64/fpu/multiarch/e_expf-fma.S: Likewise.
	* sysdeps/x86_64/fpu/w_expf.c: Likewise.
	* sysdeps/x86_64/fpu/libm-test-ulps: Updated for generic
	e_expf.c.
	* sysdeps/x86_64/fpu/multiarch/Makefile (CFLAGS-e_expf-fma.c):
	New.
	* sysdeps/x86_64/fpu/multiarch/e_expf-fma.c: New file.
	* sysdeps/x86_64/fpu/multiarch/e_expf.c (__redirect_ieee754_expf):
	Renamed to ...
	(__redirect_expf): This.
	(SYMBOL_NAME): Changed to expf.
	(__ieee754_expf): Renamed to ...
	(__expf): This.
	(__GI___expf): This.
	(__ieee754_expf): Add strong_alias.
	(__expf_finite): Likewise.
	(__expf): New.
	Include <sysdeps/ieee754/flt-32/e_expf.c>.
Diffstat (limited to 'ChangeLog')
-rw-r--r--ChangeLog22
1 files changed, 22 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index d2f0858f84..49de6bf304 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,25 @@
+2017-10-22  H.J. Lu  <hongjiu.lu@intel.com>
+
+	* sysdeps/x86_64/fpu/e_expf.S: Removed.
+	* sysdeps/x86_64/fpu/multiarch/e_expf-fma.S: Likewise.
+	* sysdeps/x86_64/fpu/w_expf.c: Likewise.
+	* sysdeps/x86_64/fpu/libm-test-ulps: Updated for generic
+	e_expf.c.
+	* sysdeps/x86_64/fpu/multiarch/Makefile (CFLAGS-e_expf-fma.c):
+	New.
+	* sysdeps/x86_64/fpu/multiarch/e_expf-fma.c: New file.
+	* sysdeps/x86_64/fpu/multiarch/e_expf.c (__redirect_ieee754_expf):
+	Renamed to ...
+	(__redirect_expf): This.
+	(SYMBOL_NAME): Changed to expf.
+	(__ieee754_expf): Renamed to ...
+	(__expf): This.
+	(__GI___expf): This.
+	(__ieee754_expf): Add strong_alias.
+	(__expf_finite): Likewise.
+	(__expf): New.
+	Include <sysdeps/ieee754/flt-32/e_expf.c>.
+
 2017-10-22  Paul Eggert <eggert@cs.ucla.edu>
 
 	[BZ #22332]