[v8,0/4] Improve roundeven function

Message ID 20210623222846.2162301-1-hjl.tools@gmail.com
Headers
Series Improve roundeven function |

Message

H.J. Lu June 23, 2021, 10:28 p.m. UTC
  Changes in the v8 patch:

1. Redirect target specific roundeven functions for aarch64, ldbl-128ibm
and riscv to fix build for aarch64, power and riscv.  Tested on i686 and
x86-64.  Passed build-many-glibcs.py.  I will checked them in on Friday
if there are no objections.


H.J.
---
H.J. Lu (1):
  Update math: redirect roundeven function

Shen-Ta Hsieh (3):
  math: redirect roundeven function
  x86_64: roundeven with sse4.1 support
  Use GCC builtins for roundeven functions if desired.

 include/math.h                                |  2 +-
 sysdeps/aarch64/fpu/s_roundeven.c             |  2 +-
 sysdeps/aarch64/fpu/s_roundevenf.c            |  1 +
 sysdeps/generic/math-use-builtins-roundeven.h |  4 +++
 sysdeps/generic/math-use-builtins.h           |  1 +
 sysdeps/ieee754/dbl-64/s_roundeven.c          |  9 +++++-
 sysdeps/ieee754/float128/float128_private.h   |  2 ++
 sysdeps/ieee754/float128/s_roundevenf128.c    |  1 +
 sysdeps/ieee754/flt-32/s_roundevenf.c         |  8 +++++
 sysdeps/ieee754/ldbl-128/s_roundevenl.c       |  6 ++++
 sysdeps/ieee754/ldbl-128ibm/s_roundevenl.c    |  1 +
 sysdeps/ieee754/ldbl-96/s_roundevenl.c        |  1 +
 sysdeps/riscv/rv64/rvd/s_roundeven.c          |  2 +-
 sysdeps/riscv/rvf/s_roundevenf.c              |  1 +
 sysdeps/x86_64/fpu/multiarch/Makefile         |  5 +--
 sysdeps/x86_64/fpu/multiarch/s_roundeven-c.c  |  2 ++
 .../x86_64/fpu/multiarch/s_roundeven-sse4_1.S | 24 ++++++++++++++
 sysdeps/x86_64/fpu/multiarch/s_roundeven.c    | 31 +++++++++++++++++++
 sysdeps/x86_64/fpu/multiarch/s_roundevenf-c.c |  3 ++
 .../fpu/multiarch/s_roundevenf-sse4_1.S       | 24 ++++++++++++++
 sysdeps/x86_64/fpu/multiarch/s_roundevenf.c   | 31 +++++++++++++++++++
 21 files changed, 155 insertions(+), 6 deletions(-)
 create mode 100644 sysdeps/generic/math-use-builtins-roundeven.h
 create mode 100644 sysdeps/x86_64/fpu/multiarch/s_roundeven-c.c
 create mode 100644 sysdeps/x86_64/fpu/multiarch/s_roundeven-sse4_1.S
 create mode 100644 sysdeps/x86_64/fpu/multiarch/s_roundeven.c
 create mode 100644 sysdeps/x86_64/fpu/multiarch/s_roundevenf-c.c
 create mode 100644 sysdeps/x86_64/fpu/multiarch/s_roundevenf-sse4_1.S
 create mode 100644 sysdeps/x86_64/fpu/multiarch/s_roundevenf.c