Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[libc] buildbot is unhappy about strfroml with negative NAN on aarch64 #101846

Open
SchrodingerZhu opened this issue Aug 3, 2024 · 2 comments
Open

Comments

@SchrodingerZhu
Copy link
Contributor

The issue is not reproducible on my machine using clang 18.1.x.

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

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

Here is the relevant piece of the build log for the reference:

Step 4 (annotate) failure: 'python ../llvm-zorg/zorg/buildbot/builders/annotated/libc-linux.py ...' (failure)
...
[2651/3600] Running unit test libc.test.src.math.smoke.roundevenf16_test.__unit__
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcRoundEvenTest.SpecialNumbers
[       OK ] LlvmLibcRoundEvenTest.SpecialNumbers (4 us)
[ RUN      ] LlvmLibcRoundEvenTest.RoundedNubmers
[       OK ] LlvmLibcRoundEvenTest.RoundedNubmers (1 us)
[ RUN      ] LlvmLibcRoundEvenTest.Fractions
[       OK ] LlvmLibcRoundEvenTest.Fractions (3 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[2652/3600] Running unit test libc.test.src.stdlib.strfroml_test.__unit__
FAILED: projects/libc/test/src/stdlib/CMakeFiles/libc.test.src.stdlib.strfroml_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/stdlib && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/stdlib/libc.test.src.stdlib.strfroml_test.__unit__.__build__
[==========] Running 7 tests from 1 test suite.
[ RUN      ] LlvmLibcStrfromlTest.FloatDecimalFormat
[       OK ] LlvmLibcStrfromlTest.FloatDecimalFormat (112 us)
[ RUN      ] LlvmLibcStrfromlTest.FloatHexExpFormat
[       OK ] LlvmLibcStrfromlTest.FloatHexExpFormat (9 us)
[ RUN      ] LlvmLibcStrfromlTest.FloatDecimalAutoFormat
[       OK ] LlvmLibcStrfromlTest.FloatDecimalAutoFormat (1 us)
[ RUN      ] LlvmLibcStrfromlTest.FloatDecimalExpFormat
[       OK ] LlvmLibcStrfromlTest.FloatDecimalExpFormat (1 us)
[ RUN      ] LlvmLibcStrfromlTest.ImproperFormatString
[       OK ] LlvmLibcStrfromlTest.ImproperFormatString (5 us)
[ RUN      ] LlvmLibcStrfromlTest.InsufficientBufferSize
[       OK ] LlvmLibcStrfromlTest.InsufficientBufferSize (188 us)
[ RUN      ] LlvmLibcStrfromlTest.InfAndNanValues
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/test/src/stdlib/StrfromTest.h:478: FAILURE
      Expected: written
      Which is: 3
To be equal to: static_cast<int>(sizeof("-NAN") - 1)
      Which is: 4
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/test/src/stdlib/StrfromTest.h:478: FAILURE
      Expected: buff
      Which is: NAN
To be equal to: "-NAN"
      Which is: -NAN
[  FAILED  ] LlvmLibcStrfromlTest.InfAndNanValues
Ran 7 tests.  PASS: 6  FAIL: 1
[2653/3600] Running unit test libc.test.src.math.smoke.ceilf_test.__unit__.__NO_ROUND_OPT
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcCeilTest.SpecialNumbers
[       OK ] LlvmLibcCeilTest.SpecialNumbers (3 us)
[ RUN      ] LlvmLibcCeilTest.RoundedNubmers
[       OK ] LlvmLibcCeilTest.RoundedNubmers (2 us)
[ RUN      ] LlvmLibcCeilTest.Fractions
[       OK ] LlvmLibcCeilTest.Fractions (3 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[2654/3600] Running unit test libc.test.src.math.smoke.getpayloadf_test.__unit__
[==========] Running 2 tests from 1 test suite.
Step 8 (libc-unit-tests) failure: libc-unit-tests (failure)
...
[2651/3600] Running unit test libc.test.src.math.smoke.roundevenf16_test.__unit__
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcRoundEvenTest.SpecialNumbers
[       OK ] LlvmLibcRoundEvenTest.SpecialNumbers (4 us)
[ RUN      ] LlvmLibcRoundEvenTest.RoundedNubmers
[       OK ] LlvmLibcRoundEvenTest.RoundedNubmers (1 us)
[ RUN      ] LlvmLibcRoundEvenTest.Fractions
[       OK ] LlvmLibcRoundEvenTest.Fractions (3 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[2652/3600] Running unit test libc.test.src.stdlib.strfroml_test.__unit__
FAILED: projects/libc/test/src/stdlib/CMakeFiles/libc.test.src.stdlib.strfroml_test.__unit__ 
cd /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/stdlib && /home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/build/projects/libc/test/src/stdlib/libc.test.src.stdlib.strfroml_test.__unit__.__build__
[==========] Running 7 tests from 1 test suite.
[ RUN      ] LlvmLibcStrfromlTest.FloatDecimalFormat
[       OK ] LlvmLibcStrfromlTest.FloatDecimalFormat (112 us)
[ RUN      ] LlvmLibcStrfromlTest.FloatHexExpFormat
[       OK ] LlvmLibcStrfromlTest.FloatHexExpFormat (9 us)
[ RUN      ] LlvmLibcStrfromlTest.FloatDecimalAutoFormat
[       OK ] LlvmLibcStrfromlTest.FloatDecimalAutoFormat (1 us)
[ RUN      ] LlvmLibcStrfromlTest.FloatDecimalExpFormat
[       OK ] LlvmLibcStrfromlTest.FloatDecimalExpFormat (1 us)
[ RUN      ] LlvmLibcStrfromlTest.ImproperFormatString
[       OK ] LlvmLibcStrfromlTest.ImproperFormatString (5 us)
[ RUN      ] LlvmLibcStrfromlTest.InsufficientBufferSize
[       OK ] LlvmLibcStrfromlTest.InsufficientBufferSize (188 us)
[ RUN      ] LlvmLibcStrfromlTest.InfAndNanValues
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/test/src/stdlib/StrfromTest.h:478: FAILURE
      Expected: written
      Which is: 3
To be equal to: static_cast<int>(sizeof("-NAN") - 1)
      Which is: 4
/home/libc-buildbot/libc-aarch64-ubuntu/libc-aarch64-ubuntu-fullbuild-dbg/llvm-project/libc/test/src/stdlib/StrfromTest.h:478: FAILURE
      Expected: buff
      Which is: NAN
To be equal to: "-NAN"
      Which is: -NAN
[  FAILED  ] LlvmLibcStrfromlTest.InfAndNanValues
Ran 7 tests.  PASS: 6  FAIL: 1
[2653/3600] Running unit test libc.test.src.math.smoke.ceilf_test.__unit__.__NO_ROUND_OPT
[==========] Running 3 tests from 1 test suite.
[ RUN      ] LlvmLibcCeilTest.SpecialNumbers
[       OK ] LlvmLibcCeilTest.SpecialNumbers (3 us)
[ RUN      ] LlvmLibcCeilTest.RoundedNubmers
[       OK ] LlvmLibcCeilTest.RoundedNubmers (2 us)
[ RUN      ] LlvmLibcCeilTest.Fractions
[       OK ] LlvmLibcCeilTest.Fractions (3 us)
Ran 3 tests.  PASS: 3  FAIL: 0
[2654/3600] Running unit test libc.test.src.math.smoke.getpayloadf_test.__unit__
[==========] Running 2 tests from 1 test suite.

Originally posted by @llvm-ci in #101797 (comment)

@github-actions github-actions bot added the libc label Aug 3, 2024
@SchrodingerZhu SchrodingerZhu changed the title [libc] buildbot is unhappy with strfroml with negative NAN on aarch64 [libc] buildbot is unhappy about strfroml with negative NAN on aarch64 Aug 3, 2024
@overmighty
Copy link
Member

Reproduced it with Clang 11 in Ubuntu container with QEMU:

$ podman run -itv ~/projects/llvm-project/:/root/llvm-project --arch arm64 docker.io/ubuntu:jammy bash

Inside container:

# apt update
# apt ugprade
# apt install g++ clang-11 cmake ninja-build
# cd ~/llvm-project
# cmake -S llvm -B build-aarch64 -G Ninja \
      -DCMAKE_BUILD_TYPE=Debug \
      -DCMAKE_C_COMPILER=clang-11 \
      -DCMAKE_CXX_COMPILER=clang++-11 \
      -DBUILD_SHARED_LIBS=ON \
      -DLLVM_ENABLE_PROJECTS="libc" \
      -DLLVM_OPTIMIZED_TABLEGEN=ON \
      -DLIBC_USE_NEW_HEADER_GEN=OFF
# cmake --build build-aarch64 --target libc.test.src.stdlib.strfroml_test.__unit__

@SchrodingerZhu
Copy link
Contributor Author

Reproduced with clang-11 on my WSL2 on Surface Pro 11. Error disappears with clang-12.

lntue pushed a commit that referenced this issue Aug 4, 2024
Disable `strfroml` entrypoint on aarch64 to please clang-11 buildbots.
Detailed in #101846. This is
not a fix for #101846 so I will keep the issue open until our buildbot
is updated or other mitigation is applied.
bherrera pushed a commit to misttech/mist-os that referenced this issue Aug 5, 2024
…int on aarch64 (#101854)

Disable `strfroml` entrypoint on aarch64 to please clang-11 buildbots.
Detailed in llvm/llvm-project#101846. This is
not a fix for #101846 so I will keep the issue open until our buildbot
is updated or other mitigation is applied.

GitOrigin-RevId: 04258e44e49da23d61b1c5af1afb09ab5ba266c6
Original-Revision: 8d3143d10741effd91e24a04654413748c5bbbbb
Roller-URL: https://ci.chromium.org/b/8740563012280279585
CQ-Do-Not-Cancel-Tryjobs: true
Change-Id: I6c043d48b6838201aa66d03374921a93e76cc7e9
Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1094234
bherrera pushed a commit to misttech/integration that referenced this issue Aug 5, 2024
…arch64 (#101854)

Disable `strfroml` entrypoint on aarch64 to please clang-11 buildbots.
Detailed in llvm/llvm-project#101846. This is
not a fix for #101846 so I will keep the issue open until our buildbot
is updated or other mitigation is applied.

GitOrigin-RevId: 04258e44e49da23d61b1c5af1afb09ab5ba266c6
Original-Revision: 8d3143d10741effd91e24a04654413748c5bbbbb
Change-Id: I82b39e5d6d7a1ea003bc0c51b1ee578fd72860bf
bherrera pushed a commit to misttech/integration that referenced this issue Aug 5, 2024
…ble strfroml entrypoint on aarch64 (#101854)

Disable `strfroml` entrypoint on aarch64 to please clang-11 buildbots.
Detailed in llvm/llvm-project#101846. This is
not a fix for #101846 so I will keep the issue open until our buildbot
is updated or other mitigation is applied.

GitOrigin-RevId: 4ab3ad6b91b19ccf23422155bf2bb37984c7d480
Original-Revision: 8d3143d10741effd91e24a04654413748c5bbbbb
Roller-URL: https://ci.chromium.org/b/8740563012280279585
CQ-Do-Not-Cancel-Tryjobs: true
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/1094234
Original-Revision: 998d2c8cd16a882a4fa512b9b50345bd776953af
Change-Id: Iad8908e3dbe726ee1b34ee9219c3a67b2af8b332
banach-space pushed a commit to banach-space/llvm-project that referenced this issue Aug 7, 2024
Disable `strfroml` entrypoint on aarch64 to please clang-11 buildbots.
Detailed in llvm#101846. This is
not a fix for llvm#101846 so I will keep the issue open until our buildbot
is updated or other mitigation is applied.
kstoimenov pushed a commit to kstoimenov/llvm-project that referenced this issue Aug 15, 2024
Disable `strfroml` entrypoint on aarch64 to please clang-11 buildbots.
Detailed in llvm#101846. This is
not a fix for llvm#101846 so I will keep the issue open until our buildbot
is updated or other mitigation is applied.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants