diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2018-12-26 06:56:04 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2018-12-26 06:56:13 -0800 |
commit | 8700a7851bccce63335f937f930382de58b8a249 (patch) | |
tree | 291a8851ca6b3fb2077226741126fce06e70a948 /nptl/thrd_sleep.c | |
parent | 57b3ff8e1a4ca8118c5d9a47584e6e0ce6f7002f (diff) | |
download | glibc-8700a7851bccce63335f937f930382de58b8a249.tar glibc-8700a7851bccce63335f937f930382de58b8a249.tar.gz glibc-8700a7851bccce63335f937f930382de58b8a249.tar.bz2 glibc-8700a7851bccce63335f937f930382de58b8a249.zip |
x86-64: Vectorize sincosf_poly and update s_sincosf-fma.c
Add <sincosf_poly.h> and include it in s_sincosf.h to allow vectorized
sincosf_poly. Add x86 sincosf_poly.h to vectorize sincosf_poly. On
Broadwell, bench-sincosf shows:
Before After Improvement
max 160.273 114.198 40%
min 6.25 5.625 11%
mean 13.0325 10.6462 22%
Vectorized sincosf_poly shows
Before After Improvement
max 138.653 114.198 21%
min 5.004 5.625 -11%
mean 11.5934 10.6462 9%
Tested on x86-64 and i686 as well as with build-many-glibcs.py.
* sysdeps/ieee754/flt-32/s_sincosf.h: Include <sincosf_poly.h>.
(sincos_t, sincosf_poly, sinf_poly): Moved to ...
* sysdeps/ieee754/flt-32/sincosf_poly.h: Here. New file.
* sysdeps/x86/fpu/s_sincosf_data.c: New file.
* sysdeps/x86/fpu/sincosf_poly.h: Likewise.
* sysdeps/x86_64/fpu/multiarch/s_sincosf-fma.c: Just include
<sysdeps/ieee754/flt-32/s_sincosf.c>.
Diffstat (limited to 'nptl/thrd_sleep.c')
0 files changed, 0 insertions, 0 deletions