[libc-commits] [libc] [libc][math][c++23] Add {get, set}payloadbf16 and setpayloadsigbf16 math functions (PR #153994)
Krishna Pandey via libc-commits
libc-commits at lists.llvm.org
Fri Aug 22 12:31:28 PDT 2025
================
@@ -51,23 +51,50 @@ class GetPayloadTestTemplate : public LIBC_NAMESPACE::testing::FEnvSafeTest {
EXPECT_FP_EQ(default_snan_payload, funcWrapper(func, sNaN));
EXPECT_FP_EQ(default_snan_payload, funcWrapper(func, neg_sNaN));
- T qnan_42 = FPBits::quiet_nan(Sign::POS, 0x42).get_val();
- T neg_qnan_42 = FPBits::quiet_nan(Sign::NEG, 0x42).get_val();
- T snan_42 = FPBits::signaling_nan(Sign::POS, 0x42).get_val();
- T neg_snan_42 = FPBits::signaling_nan(Sign::NEG, 0x42).get_val();
- EXPECT_FP_EQ(T(0x42.0p+0), funcWrapper(func, qnan_42));
- EXPECT_FP_EQ(T(0x42.0p+0), funcWrapper(func, neg_qnan_42));
- EXPECT_FP_EQ(T(0x42.0p+0), funcWrapper(func, snan_42));
- EXPECT_FP_EQ(T(0x42.0p+0), funcWrapper(func, neg_snan_42));
-
- T qnan_123 = FPBits::quiet_nan(Sign::POS, 0x123).get_val();
- T neg_qnan_123 = FPBits::quiet_nan(Sign::NEG, 0x123).get_val();
- T snan_123 = FPBits::signaling_nan(Sign::POS, 0x123).get_val();
- T neg_snan_123 = FPBits::signaling_nan(Sign::NEG, 0x123).get_val();
- EXPECT_FP_EQ(T(0x123.0p+0), funcWrapper(func, qnan_123));
- EXPECT_FP_EQ(T(0x123.0p+0), funcWrapper(func, neg_qnan_123));
- EXPECT_FP_EQ(T(0x123.0p+0), funcWrapper(func, snan_123));
- EXPECT_FP_EQ(T(0x123.0p+0), funcWrapper(func, neg_snan_123));
+ if constexpr (FPBits::FRACTION_LEN - 1 >= 6) {
----------------
krishna2803 wrote:
added another if for 5 bits in [b310e151](https://github.com/llvm/llvm-project/pull/153994/commits/b310e151995d34f76afe5bb806befea1c5f91ff3)
https://github.com/llvm/llvm-project/pull/153994
More information about the libc-commits
mailing list