Skip to content

[libc][math] Fix signaling nans and floating point exceptions for some math functions. #124812

Closed
@lntue

Description

@lntue

The following issues with signaling nans and floating point exceptions are reported by @zimmermann6 with the CORE-MATH test suites:

CORE_MATH_CHECK_STD=true LIBM=/localdisk/zimmerma/llvm-project/build/projects/libc/lib/libllvmlibc.a ./check.sh $f

atan2
Running worst cases check in --rndn mode...
Missing inexact exception for x=0x0.0000000000001p-1022 y=0x1p+0 (z=0x0.0000000000001p-1022)

atan2f
Running worst cases check in --rndn mode...
Missing invalid exception for x=nan y=0x1p+0

exp
Running worst cases check in --rndn mode...
Error, foo(sNaN) should be qNaN, got sNaN=fff0000000000001

exp10
Running worst cases check in --rndn mode...
Error, foo(sNaN) should be qNaN, got sNaN=fff0000000000001

exp2
Running worst cases check in --rndn mode...
Error, foo(sNaN) should be qNaN, got sNaN=fff0000000000001

log
Running worst cases check in --rndn mode...
Error, foo(sNaN) should be qNaN, got sNaN=7ff0000000000001

log10
Running worst cases check in --rndn mode...
Error, foo(sNaN) should be qNaN, got sNaN=7ff0000000000001

log1p
Running worst cases check in --rndn mode...
Error, foo(sNaN) should be qNaN, got sNaN=7ff0000000000001

log2
Running worst cases check in --rndn mode...
Error, foo(sNaN) should be qNaN, got sNaN=7ff0000000000001

pow
Running worst cases check in --rndn mode...
Error, foo(sNaN,1.0) should be qNaN, got sNaN=7ff0000000000001

powf
Running worst cases check in --rndn mode...
Error, foo(sNaN,x) should be qNaN, got sNaN=7f800001

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions