[libc-commits] [libc] [libc][math] Fix signaling NaN handling for math functions. (PR #133347)

LLVM Continuous Integration via libc-commits libc-commits at lists.llvm.org
Tue Apr 8 06:28:31 PDT 2025


llvm-ci wrote:

LLVM Buildbot has detected a new failure on builder `libc-aarch64-ubuntu-dbg` running on `libc-aarch64-ubuntu` while building `libc` at step 4 "annotate".

Full details are available at: https://lab.llvm.org/buildbot/#/builders/104/builds/19829

<details>
<summary>Here is the relevant piece of the build log for the reference</summary>

```
Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[561/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.log10f_test.__unit__.__build__
[562/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.atanf_test.__unit__.__build__
[563/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.log1p_test.__unit__.__build__
[564/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.cospif16_test.__unit__.__NO_ROUND_OPT.__build__
[565/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.cos_test.__unit__.__build__
[566/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.exp10_test.__unit__.__build__.dir/exp10_test.cpp.o
[567/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.sinpif16_test.__unit__.__build__
[568/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.coshf_test.__unit__.__build__.dir/coshf_test.cpp.o
[569/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.exp2f_test.__unit__.__build__.dir/exp2f_test.cpp.o
[570/1289] Running unit test libc.test.src.math.smoke.sinpif16_test.__unit__
FAILED: libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinpif16_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/build/libc/test/src/math/smoke && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/build/libc/test/src/math/smoke/libc.test.src.math.smoke.sinpif16_test.__unit__.__build__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcSinpif16Test.SpecialNumbers
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-project/libc/test/src/math/smoke/sinpif16_test.cpp:20: FAILURE
      Expected: __llvm_libc_20_0_0_git::fputil::test_except( static_cast<int>((1 | 2 | 4 | 8 | 16))) & ((1) ? (1) : static_cast<int>((1 | 2 | 4 | 8 | 16)))
      Which is: 0
To be equal to: (1)
      Which is: 1
[  FAILED  ] LlvmLibcSinpif16Test.SpecialNumbers
[ RUN      ] LlvmLibcSinpif16Test.Integers
[       OK ] LlvmLibcSinpif16Test.Integers (9 us)
Ran 2 tests.  PASS: 1  FAIL: 1
[571/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinf_test.__unit__.__NO_ROUND_OPT.__build__.dir/sinf_test.cpp.o
[572/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.exp10_test.__unit__.__build__
[573/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinpif_test.__unit__.__build__.dir/sinpif_test.cpp.o
[574/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.cospif_test.__unit__.__build__.dir/cospif_test.cpp.o
[575/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.exp2f_test.__unit__.__build__
[576/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.coshf_test.__unit__.__build__
[577/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.tanf_test.__unit__.__build__.dir/tanf_test.cpp.o
[578/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.atanhf_test.__unit__.__NO_ROUND_OPT.__build__.dir/atanhf_test.cpp.o
[579/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sincosf_test.__unit__.__build__.dir/sincosf_test.cpp.o
[580/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.coshf_test.__unit__.__NO_ROUND_OPT.__build__.dir/coshf_test.cpp.o
[581/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.tan_test.__unit__.__NO_ROUND_OPT.__build__.dir/tan_test.cpp.o
[582/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.cos_test.__unit__.__NO_ROUND_OPT.__build__.dir/cos_test.cpp.o
[583/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sincosf_test.__unit__.__NO_ROUND_OPT.__build__.dir/sincosf_test.cpp.o
[584/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinf_test.__unit__.__build__.dir/sinf_test.cpp.o
[585/1289] Running unit test libc.test.src.math.lrintl_test.__unit__
[==========] Running 6 tests from 1 test suite.
[ RUN      ] LlvmLibcRoundToIntegerTest.InfinityAndNaN
[       OK ] LlvmLibcRoundToIntegerTest.InfinityAndNaN (7 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.RoundNumbers
[       OK ] LlvmLibcRoundToIntegerTest.RoundNumbers (121 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.Fractions
[       OK ] LlvmLibcRoundToIntegerTest.Fractions (26 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.IntegerOverflow
[       OK ] LlvmLibcRoundToIntegerTest.IntegerOverflow (25 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.SubnormalRange
[       OK ] LlvmLibcRoundToIntegerTest.SubnormalRange (1080 ms)
Step 7 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[561/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.log10f_test.__unit__.__build__
[562/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.atanf_test.__unit__.__build__
[563/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.log1p_test.__unit__.__build__
[564/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.cospif16_test.__unit__.__NO_ROUND_OPT.__build__
[565/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.cos_test.__unit__.__build__
[566/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.exp10_test.__unit__.__build__.dir/exp10_test.cpp.o
[567/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.sinpif16_test.__unit__.__build__
[568/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.coshf_test.__unit__.__build__.dir/coshf_test.cpp.o
[569/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.exp2f_test.__unit__.__build__.dir/exp2f_test.cpp.o
[570/1289] Running unit test libc.test.src.math.smoke.sinpif16_test.__unit__
FAILED: libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinpif16_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/build/libc/test/src/math/smoke && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/build/libc/test/src/math/smoke/libc.test.src.math.smoke.sinpif16_test.__unit__.__build__
[==========] Running 2 tests from 1 test suite.
[ RUN      ] LlvmLibcSinpif16Test.SpecialNumbers
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu/llvm-project/libc/test/src/math/smoke/sinpif16_test.cpp:20: FAILURE
      Expected: __llvm_libc_20_0_0_git::fputil::test_except( static_cast<int>((1 | 2 | 4 | 8 | 16))) & ((1) ? (1) : static_cast<int>((1 | 2 | 4 | 8 | 16)))
      Which is: 0
To be equal to: (1)
      Which is: 1
[  FAILED  ] LlvmLibcSinpif16Test.SpecialNumbers
[ RUN      ] LlvmLibcSinpif16Test.Integers
[       OK ] LlvmLibcSinpif16Test.Integers (9 us)
Ran 2 tests.  PASS: 1  FAIL: 1
[571/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinf_test.__unit__.__NO_ROUND_OPT.__build__.dir/sinf_test.cpp.o
[572/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.exp10_test.__unit__.__build__
[573/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinpif_test.__unit__.__build__.dir/sinpif_test.cpp.o
[574/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.cospif_test.__unit__.__build__.dir/cospif_test.cpp.o
[575/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.exp2f_test.__unit__.__build__
[576/1289] Linking CXX executable libc/test/src/math/smoke/libc.test.src.math.smoke.coshf_test.__unit__.__build__
[577/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.tanf_test.__unit__.__build__.dir/tanf_test.cpp.o
[578/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.atanhf_test.__unit__.__NO_ROUND_OPT.__build__.dir/atanhf_test.cpp.o
[579/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sincosf_test.__unit__.__build__.dir/sincosf_test.cpp.o
[580/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.coshf_test.__unit__.__NO_ROUND_OPT.__build__.dir/coshf_test.cpp.o
[581/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.tan_test.__unit__.__NO_ROUND_OPT.__build__.dir/tan_test.cpp.o
[582/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.cos_test.__unit__.__NO_ROUND_OPT.__build__.dir/cos_test.cpp.o
[583/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sincosf_test.__unit__.__NO_ROUND_OPT.__build__.dir/sincosf_test.cpp.o
[584/1289] Building CXX object libc/test/src/math/smoke/CMakeFiles/libc.test.src.math.smoke.sinf_test.__unit__.__build__.dir/sinf_test.cpp.o
[585/1289] Running unit test libc.test.src.math.lrintl_test.__unit__
[==========] Running 6 tests from 1 test suite.
[ RUN      ] LlvmLibcRoundToIntegerTest.InfinityAndNaN
[       OK ] LlvmLibcRoundToIntegerTest.InfinityAndNaN (7 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.RoundNumbers
[       OK ] LlvmLibcRoundToIntegerTest.RoundNumbers (121 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.Fractions
[       OK ] LlvmLibcRoundToIntegerTest.Fractions (26 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.IntegerOverflow
[       OK ] LlvmLibcRoundToIntegerTest.IntegerOverflow (25 us)
[ RUN      ] LlvmLibcRoundToIntegerTest.SubnormalRange
[       OK ] LlvmLibcRoundToIntegerTest.SubnormalRange (1080 ms)

```

</details>

https://github.com/llvm/llvm-project/pull/133347


More information about the libc-commits mailing list