Skip to content

Commit 8ead83c

Browse files
committed
Address comment.
1 parent b424378 commit 8ead83c

File tree

3 files changed

+19
-6
lines changed

3 files changed

+19
-6
lines changed

libc/test/src/math/acos_test.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,11 @@ TEST_F(LlvmLibcAcosTest, InDoubleRange) {
3636

3737
for (uint64_t i = 0, v = START; i <= COUNT; ++i, v += STEP) {
3838
double x = FPBits(v).get_val();
39-
if (FPBits(v).is_nan() || FPBits(v).is_inf())
39+
if (FPBits(v).is_inf_or_nan())
4040
continue;
4141
double result = LIBC_NAMESPACE::acos(x);
4242
++cc;
43-
if (FPBits(result).is_nan() || FPBits(result).is_inf())
43+
if (FPBits(result).is_inf_or_nan())
4444
continue;
4545

4646
++count;

libc/test/src/math/smoke/CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4058,6 +4058,8 @@ add_fp_unittest(
40584058
SRCS
40594059
acos_test.cpp
40604060
DEPENDS
4061+
libc.hdr.fenv_macros
4062+
libc.src.errno.errno
40614063
libc.src.math.acos
40624064
)
40634065

libc/test/src/math/smoke/acos_test.cpp

Lines changed: 15 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@
77
//===----------------------------------------------------------------------===//
88

99
#include "hdr/fenv_macros.h"
10+
#include "src/errno/libc_errno.h"
1011
#include "src/math/acos.h"
1112
#include "test/UnitTest/FPMatcher.h"
1213
#include "test/UnitTest/Test.h"
@@ -19,10 +20,20 @@ TEST_F(LlvmLibcAcosTest, SpecialNumbers) {
1920
EXPECT_FP_EQ_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(aNaN));
2021
EXPECT_FP_EQ(0x1.921fb54442d18p0, LIBC_NAMESPACE::acos(zero));
2122
EXPECT_FP_EQ(0x1.921fb54442d18p0, LIBC_NAMESPACE::acos(neg_zero));
22-
EXPECT_FP_EQ_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(inf));
23-
EXPECT_FP_EQ_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(neg_inf));
24-
EXPECT_FP_EQ_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(2.0));
25-
EXPECT_FP_EQ_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(-2.0));
23+
24+
LIBC_NAMESPACE::libc_errno = 0;
25+
EXPECT_FP_EQ_WITH_EXCEPTION_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(inf),
26+
FE_INVALID);
27+
EXPECT_MATH_ERRNO(EDOM);
28+
EXPECT_FP_EQ_WITH_EXCEPTION_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(neg_inf),
29+
FE_INVALID);
30+
EXPECT_MATH_ERRNO(EDOM);
31+
EXPECT_FP_EQ_WITH_EXCEPTION_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(2.0),
32+
FE_INVALID);
33+
EXPECT_MATH_ERRNO(EDOM);
34+
EXPECT_FP_EQ_WITH_EXCEPTION_ALL_ROUNDING(aNaN, LIBC_NAMESPACE::acos(-2.0),
35+
FE_INVALID);
36+
EXPECT_MATH_ERRNO(EDOM);
2637
EXPECT_FP_EQ(zero, LIBC_NAMESPACE::acos(1.0));
2738
EXPECT_FP_EQ(0x1.921fb54442d18p1, LIBC_NAMESPACE::acos(-1.0));
2839
EXPECT_FP_EQ(0x1.921fb54442d18p0, LIBC_NAMESPACE::acos(0x1.0p-54));

0 commit comments

Comments
 (0)