Skip to content

Commit 270a792

Browse files
committed
Fix FTZ/DAZ.
1 parent 74acfae commit 270a792

File tree

2 files changed

+3
-3
lines changed

2 files changed

+3
-3
lines changed

libc/src/math/generic/asin.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ LLVM_LIBC_FUNCTION(double, asin, (double x)) {
5656
#elif defined(LIBC_TARGET_CPU_HAS_FMA_DOUBLE)
5757
return fputil::multiply_add(x, 0x1.0p-54, x);
5858
#else
59-
if (x == 0.0)
59+
if (xbits.abs().uintval() == 0)
6060
return x;
6161
// Get sign(x) * min_normal.
6262
FPBits eps_bits = FPBits::min_normal();

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

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,13 +36,13 @@ TEST_F(LlvmLibcAsinTest, FTZMode) {
3636
TEST_F(LlvmLibcAsinTest, DAZMode) {
3737
ModifyMXCSR mxcsr(DAZ);
3838

39-
EXPECT_FP_EQ(min_denormal, LIBC_NAMESPACE::asin(min_denormal));
39+
EXPECT_FP_EQ(zero, LIBC_NAMESPACE::asin(min_denormal));
4040
}
4141

4242
TEST_F(LlvmLibcAsinTest, FTZDAZMode) {
4343
ModifyMXCSR mxcsr(FTZ | DAZ);
4444

45-
EXPECT_FP_EQ(min_denormal, LIBC_NAMESPACE::asin(min_denormal));
45+
EXPECT_FP_EQ(zero, LIBC_NAMESPACE::asin(min_denormal));
4646
}
4747

4848
#endif

0 commit comments

Comments
 (0)