[libc-commits] [libc] [libc][math] Fix signaling NaN handling for math functions. (PR #133347)
via libc-commits
libc-commits at lists.llvm.org
Wed Apr 2 07:50:15 PDT 2025
================
@@ -18,6 +18,18 @@ using LlvmLibcAtan2fTest = LIBC_NAMESPACE::testing::FPTest<float>;
TEST_F(LlvmLibcAtan2fTest, SpecialNumbers) {
LIBC_NAMESPACE::libc_errno = 0;
+ EXPECT_FP_EQ_WITH_EXCEPTION(aNaN, LIBC_NAMESPACE::atan2f(sNaN, sNaN),
+ FE_INVALID);
+ EXPECT_MATH_ERRNO(0);
+
+ EXPECT_FP_EQ_WITH_EXCEPTION(aNaN, LIBC_NAMESPACE::atan2f(sNaN, 1.0),
+ FE_INVALID);
+ EXPECT_MATH_ERRNO(0);
+
+ EXPECT_FP_EQ_WITH_EXCEPTION(aNaN, LIBC_NAMESPACE::atan2f(1.0, sNaN),
+ FE_INVALID);
----------------
overmighty wrote:
Nit: should use `1.0f` instead of `1.0` since `atan2f` takes a `float` input.
https://github.com/llvm/llvm-project/pull/133347
More information about the libc-commits
mailing list