[libc] Enable exp10m1f on RISC-V (#138768)
Previously, the test failed due to isnan() and isinf() not being defined. This patch follows other tests in the same directory and calls isnan and isinf from the FBits class. --------- Co-authored-by: OverMighty <its.overmighty@gmail.com>
This commit is contained in:
committed by
GitHub
parent
8d9f5160b4
commit
52e5889d0e
@@ -451,7 +451,7 @@ set(TARGET_LIBM_ENTRYPOINTS
|
||||
libc.src.math.exp
|
||||
libc.src.math.exp10
|
||||
libc.src.math.exp10f
|
||||
# libc.src.math.exp10m1f
|
||||
libc.src.math.exp10m1f
|
||||
libc.src.math.exp2
|
||||
libc.src.math.exp2f
|
||||
libc.src.math.exp2m1f
|
||||
|
||||
@@ -80,7 +80,7 @@ TEST_F(LlvmLibcExp10m1fTest, InFloatRange) {
|
||||
constexpr uint32_t STEP = UINT32_MAX / COUNT;
|
||||
for (uint32_t i = 0, v = 0; i <= COUNT; ++i, v += STEP) {
|
||||
float x = FPBits(v).get_val();
|
||||
if (isnan(x) || isinf(x))
|
||||
if (FPBits(v).is_inf_or_nan())
|
||||
continue;
|
||||
LIBC_NAMESPACE::libc_errno = 0;
|
||||
float result = LIBC_NAMESPACE::exp10m1f(x);
|
||||
@@ -89,7 +89,7 @@ TEST_F(LlvmLibcExp10m1fTest, InFloatRange) {
|
||||
// in the single-precision floating point range, then ignore comparing with
|
||||
// MPFR result as MPFR can still produce valid results because of its
|
||||
// wider precision.
|
||||
if (isnan(result) || isinf(result) || LIBC_NAMESPACE::libc_errno != 0)
|
||||
if (FPBits(result).is_inf_or_nan() || LIBC_NAMESPACE::libc_errno != 0)
|
||||
continue;
|
||||
ASSERT_MPFR_MATCH_ALL_ROUNDING(mpfr::Operation::Exp10m1, x,
|
||||
LIBC_NAMESPACE::exp10m1f(x), 0.5);
|
||||
|
||||
Reference in New Issue
Block a user