[libc] Implement log1pf correctly rounded to all rounding modes.
authorTue Ly <lntue@google.com>
Fri, 4 Feb 2022 02:27:26 +0000 (21:27 -0500)
committerTue Ly <lntue@google.com>
Mon, 7 Feb 2022 21:17:18 +0000 (16:17 -0500)
commit9e7688c71e97b7056bf2a40c3e24ce31dc795f10
tree678740b1f5500400a91474a4306abc64d4cf8868
parent4fb7c120fed504519d167c93ed9d920aeae46fb0
[libc] Implement log1pf correctly rounded to all rounding modes.

Implement log1pf correctly rounded to all rounding modes relying on logf implementation for exponent > 2^(-8).

Reviewed By: sivachandra, zimmermann6

Differential Revision: https://reviews.llvm.org/D118962
19 files changed:
libc/config/linux/aarch64/entrypoints.txt
libc/config/linux/x86_64/entrypoints.txt
libc/config/windows/entrypoints.txt
libc/spec/stdc.td
libc/src/math/CMakeLists.txt
libc/src/math/generic/CMakeLists.txt
libc/src/math/generic/common_constants.cpp
libc/src/math/generic/common_constants.h
libc/src/math/generic/log1pf.cpp [new file with mode: 0644]
libc/src/math/generic/logf.cpp
libc/src/math/log1pf.h [new file with mode: 0644]
libc/test/src/math/CMakeLists.txt
libc/test/src/math/differential_testing/CMakeLists.txt
libc/test/src/math/differential_testing/log1pf_perf.cpp [new file with mode: 0644]
libc/test/src/math/exhaustive/CMakeLists.txt
libc/test/src/math/exhaustive/log1pf_test.cpp [new file with mode: 0644]
libc/test/src/math/log1pf_test.cpp [new file with mode: 0644]
libc/utils/MPFRWrapper/MPFRUtils.cpp
libc/utils/MPFRWrapper/MPFRUtils.h