This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[PATCH v2 0/1] aarch64: Add optimized version of sinf and cosf


The v2 version of this patch has the C version of the sinf and cosf
as suggested in reviews for v1.

The max ulp error for different code path intervals are given below. The error
was calculated by comparing to output of sin().

  ---------------------------------
  Interval                ULP Error
  ---------------------------------
  0      <  x < 2^-27      0.000000
  2^-27  <= x < 2^-5       0.500000
  2^-5   <= x < pi/4       0.500000
  pi/4   <= x < 9*pi/4     0.500001
  9*pi/4 <= x < 2^23       0.500001
  2^23   <= x < Inf        0.500001

  (The above were observed in case of all rounding modes)

The patchset was tested using "make check" for the math sub-directory.
The tests were run on linux 4.4.0-45-generic on ThunderX88 platform.

v2:
* Re-write complete implementation from assembly to C.
* Moved the source files from sysdeps/aarch64/fpu/multiarch to
  sysdeps/aarch64/fpu

Ashwin Sekhar T K (1):
  aarch64: Add optimized version of sinf and cosf

 sysdeps/aarch64/fpu/chebyshev.h |  84 ++++++++++++++++++++++++
 sysdeps/aarch64/fpu/reduce.h    | 142 ++++++++++++++++++++++++++++++++++++++++
 sysdeps/aarch64/fpu/s_cosf.c    | 110 +++++++++++++++++++++++++++++++
 sysdeps/aarch64/fpu/s_sinf.c    | 120 +++++++++++++++++++++++++++++++++
 4 files changed, 456 insertions(+)
 create mode 100644 sysdeps/aarch64/fpu/chebyshev.h
 create mode 100644 sysdeps/aarch64/fpu/reduce.h
 create mode 100644 sysdeps/aarch64/fpu/s_cosf.c
 create mode 100644 sysdeps/aarch64/fpu/s_sinf.c

-- 
2.12.2


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]