i686: Use generic sincosf implementation for SSE2 version
commit5a6f2cabb62b2d5e4c356718283b6cb7e440ac9c
authorAdhemerval Zanella <adhemerval.zanella@linaro.org>
Tue, 31 May 2022 21:13:54 +0000 (31 18:13 -0300)
committerAdhemerval Zanella <adhemerval.zanella@linaro.org>
Wed, 1 Jun 2022 13:47:44 +0000 (1 10:47 -0300)
tree42acdf13f5f471a297a87d2f18769ff7bd9ca794
parentdc208f4a53e71560432ad6a4aa42da1becc7bd3f
i686: Use generic sincosf implementation for SSE2 version

The generic implementation shows slight better performance
(gcc 11.2.1 on a Ryzen 9 5900X):

* s_sincosf-sse2.S:
  "sincosf": {
   "workload-random": {
    "duration": 3.89961e+09,
    "iterations": 9.5472e+07,
    "reciprocal-throughput": 40.8429,
    "latency": 40.8483,
    "max-throughput": 2.4484e+07,
    "min-throughput": 2.44808e+07
   }
  }

* generic s_cossinf.c:
  "sincosf": {
   "workload-random": {
    "duration": 3.71953e+09,
    "iterations": 1.48512e+08,
    "reciprocal-throughput": 25.0515,
    "latency": 25.0391,
    "max-throughput": 3.99177e+07,
    "min-throughput": 3.99375e+07
   }
  }

Checked on i686-linux-gnu.

Reviewed-by: H.J. Lu <hjl.tools@gmail.com>
sysdeps/i386/i686/fpu/multiarch/Makefile
sysdeps/i386/i686/fpu/multiarch/libm-test-ulps
sysdeps/i386/i686/fpu/multiarch/s_sincosf-sse2.S [deleted file]
sysdeps/i386/i686/fpu/multiarch/s_sincosf-sse2.c [new file with mode: 0644]
sysdeps/ieee754/flt-32/s_sincosf.c