diff options
author | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2024-11-11 17:38:44 -0300 |
---|---|---|
committer | Adhemerval Zanella <adhemerval.zanella@linaro.org> | 2024-11-26 15:07:57 -0300 |
commit | 3b1c5a539b7b8cb833f22012d1a95a4847594747 (patch) | |
tree | 6f8077c02fba9db87c69cfe49dc20354b5011bfd /stdio-common/bug18a.c | |
parent | 32445b6dd2d23bd303dbb66fa3c7d0179c19dc76 (diff) | |
download | glibc-3b1c5a539b7b8cb833f22012d1a95a4847594747.zip glibc-3b1c5a539b7b8cb833f22012d1a95a4847594747.tar.gz glibc-3b1c5a539b7b8cb833f22012d1a95a4847594747.tar.bz2 |
math: Add internal roundeven_finite
Some CORE-MATH routines uses roundeven and most of ISA do not have
an specific instruction for the operation. In this case, the call
will be routed to generic implementation.
However, if the ISA does support round() and ctz() there is a better
alternative (as used by CORE-MATH).
This patch adds such optimization and also enables it on powerpc.
On a power10 it shows the following improvement:
expm1f master patched improvement
latency 9.8574 7.0139 28.85%
reciprocal-throughput 4.3742 2.6592 39.21%
Checked on powerpc64le-linux-gnu and aarch64-linux-gnu.
Reviewed-by: DJ Delorie <dj@redhat.com>
Diffstat (limited to 'stdio-common/bug18a.c')
0 files changed, 0 insertions, 0 deletions