Skip to content

Add extendhfxf2 into compiler rt #111099

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

Merged
merged 1 commit into from
Oct 26, 2024
Merged

Add extendhfxf2 into compiler rt #111099

merged 1 commit into from
Oct 26, 2024

Conversation

biabbas
Copy link
Contributor

@biabbas biabbas commented Oct 4, 2024

Retry pr #109090 with updated extendhfxf2 test

Copy link

github-actions bot commented Oct 4, 2024

✅ With the latest revision this PR passed the C/C++ code formatter.

@biabbas biabbas force-pushed the extendhfxf22 branch 5 times, most recently from 131ee36 to 0fe9703 Compare October 4, 2024 07:57
@biabbas biabbas marked this pull request as ready for review October 7, 2024 03:53
@biabbas
Copy link
Contributor Author

biabbas commented Oct 24, 2024

ping @lntue

@lntue lntue merged commit 5f7bad0 into llvm:main Oct 26, 2024
8 checks passed
@llvm-ci
Copy link
Collaborator

llvm-ci commented Oct 26, 2024

LLVM Buildbot has detected a new failure on builder sanitizer-aarch64-linux-bootstrap-hwasan running on sanitizer-buildbot11 while building compiler-rt,llvm at step 2 "annotate".

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

Here is the relevant piece of the build log for the reference
Step 2 (annotate) failure: 'python ../sanitizer_buildbot/sanitizers/zorg/buildbot/builders/sanitizers/buildbot_selector.py' (failure)
...
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld.lld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 83146 tests, 48 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
FAIL: lld :: ELF/no-obj.s (82029 of 83146)
******************** TEST 'lld :: ELF/no-obj.s' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/llvm-mc -filetype=obj -triple=x86_64-pc-linux /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/lld/test/ELF/no-obj.s -o /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
+ /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/llvm-mc -filetype=obj -triple=x86_64-pc-linux /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/lld/test/ELF/no-obj.s -o /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
RUN: at line 3: rm -f /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a
+ rm -f /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a
RUN: at line 4: llvm-ar rcs /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
+ llvm-ar rcs /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
RUN: at line 5: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld.lld -o /dev/null -u _start /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a 2>&1 | /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/count 0
+ /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/count 0
+ /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld.lld -o /dev/null -u _start /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a
Expected 0 lines, got 1.

--

********************
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. 
Slowest Tests:
--------------------------------------------------------------------------
163.29s: LLVM :: CodeGen/AMDGPU/sched-group-barrier-pipeline-solver.mir
102.04s: Clang :: CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
87.55s: Clang :: CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
79.47s: Clang :: Driver/fsanitize.c
75.30s: Clang :: CodeGen/X86/rot-intrinsics.c
74.34s: Clang :: Headers/arm-neon-header.c
71.74s: Clang :: CodeGen/X86/sse2-builtins.c
71.59s: Clang :: CodeGen/X86/avx-builtins.c
67.09s: Clang :: Preprocessor/riscv-target-features.c
60.59s: Clang :: CodeGen/X86/avx2-builtins.c
59.83s: Clang :: OpenMP/target_defaultmap_codegen_01.cpp
59.81s: Clang :: OpenMP/target_update_codegen.cpp
56.43s: Clang :: Driver/arm-cortex-cpus-2.c
56.26s: Clang :: Driver/arm-cortex-cpus-1.c
54.70s: Clang :: CodeGen/X86/x86_64-xsave.c
53.08s: Clang :: CodeGen/X86/sse41-builtins.c
Step 10 (stage2/hwasan check) failure: stage2/hwasan check (failure)
...
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld.lld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using lld-link: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/lld-link
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using ld64.lld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld64.lld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/llvm/config.py:506: note: using wasm-ld: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/wasm-ld
llvm-lit: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/llvm/utils/lit/lit/main.py:72: note: The test suite configuration requested an individual test timeout of 0 seconds but a timeout of 900 seconds was requested on the command line. Forcing timeout to be 900 seconds.
-- Testing: 83146 tests, 48 workers --
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90..
FAIL: lld :: ELF/no-obj.s (82029 of 83146)
******************** TEST 'lld :: ELF/no-obj.s' FAILED ********************
Exit Code: 1

Command Output (stderr):
--
RUN: at line 2: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/llvm-mc -filetype=obj -triple=x86_64-pc-linux /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/lld/test/ELF/no-obj.s -o /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
+ /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/llvm-mc -filetype=obj -triple=x86_64-pc-linux /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm-project/lld/test/ELF/no-obj.s -o /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
RUN: at line 3: rm -f /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a
+ rm -f /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a
RUN: at line 4: llvm-ar rcs /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
+ llvm-ar rcs /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.o
RUN: at line 5: /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld.lld -o /dev/null -u _start /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a 2>&1 | /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/count 0
+ /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/count 0
+ /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/bin/ld.lld -o /dev/null -u _start /home/b/sanitizer-aarch64-linux-bootstrap-hwasan/build/llvm_build_hwasan/tools/lld/test/ELF/Output/no-obj.s.tmp.a
Expected 0 lines, got 1.

--

********************
Testing:  0.. 10.. 20.. 30.. 40.. 50.. 60.. 70.. 80.. 90.. 
Slowest Tests:
--------------------------------------------------------------------------
163.29s: LLVM :: CodeGen/AMDGPU/sched-group-barrier-pipeline-solver.mir
102.04s: Clang :: CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret.c
87.55s: Clang :: CodeGen/aarch64-sve-intrinsics/acle_sve_reinterpret-bfloat.c
79.47s: Clang :: Driver/fsanitize.c
75.30s: Clang :: CodeGen/X86/rot-intrinsics.c
74.34s: Clang :: Headers/arm-neon-header.c
71.74s: Clang :: CodeGen/X86/sse2-builtins.c
71.59s: Clang :: CodeGen/X86/avx-builtins.c
67.09s: Clang :: Preprocessor/riscv-target-features.c
60.59s: Clang :: CodeGen/X86/avx2-builtins.c
59.83s: Clang :: OpenMP/target_defaultmap_codegen_01.cpp
59.81s: Clang :: OpenMP/target_update_codegen.cpp
56.43s: Clang :: Driver/arm-cortex-cpus-2.c
56.26s: Clang :: Driver/arm-cortex-cpus-1.c
54.70s: Clang :: CodeGen/X86/x86_64-xsave.c
53.08s: Clang :: CodeGen/X86/sse41-builtins.c

@mstorsjo
Copy link
Member

The updated testcase here still fails on Windows in MinGW configurations: https://github.com/mstorsjo/llvm-mingw/actions/runs/11527502938/job/32098789138

# .---command stderr------------
# | D:\a\llvm-mingw\llvm-mingw\llvm-project\compiler-rt\test\builtins\Unit\extendhfxf2_test.c:14:3: error: unknown type name '__uint16_t'; did you mean '__uint128_t'?
# |    14 |   __uint16_t *b = (void *)&a;
# |       |   ^~~~~~~~~~
# |       |   __uint128_t
# | note: '__uint128_t' declared here
# | D:\a\llvm-mingw\llvm-mingw\llvm-project\compiler-rt\test\builtins\Unit\extendhfxf2_test.c:19:12: warning: format specifies type 'unsigned int' but the argument has type '__uint128_t' (aka 'unsigned __int128') [-Wformat]
# |    17 |     printf("error in test__extendhfxf2(%#.4x) = %.20Lf, "
# |       |                                        ~~~~~
# |    18 |            "expected %.20Lf\n",
# |    19 |            *b, x, expected);
# |       |            ^~
# | D:\a\llvm-mingw\llvm-mingw\llvm-project\compiler-rt\test\builtins\Unit\extendhfxf2_test.c:48:49: error: use of unknown builtin '__builtin_huge_valf64x' [-Wimplicit-function-declaration]
# |    48 |   if (test_extendhfxf2(__builtin_huge_valf16(), __builtin_huge_valf64x()))
# |       |                                                 ^
# | D:\a\llvm-mingw\llvm-mingw\llvm-project\compiler-rt\test\builtins\Unit\extendhfxf2_test.c:58:37: error: use of unknown builtin '__builtin_nanf64x' [-Wimplicit-function-declaration]
# |    58 |                        (long double)__builtin_nanf64x("")))
# |       |                                     ^
# | 1 warning and 3 errors generated.
# `-----------------------------

While sorting this out, can you revert in the meantime?

We'd need to figure out which targets have a builtin type like __uint16_t and which don't (or can we just use uint16_t by including stdint.h? And which targets have __builtin_huge_valf64x and __builtin_nanf64x - as they're not available for mingw targets at least.

@rorth
Copy link
Collaborator

rorth commented Oct 26, 2024

The patch likewise broke the Solaris/amd64 bot.

mstorsjo added a commit that referenced this pull request Oct 26, 2024
This reverts commit 5f7bad0.

These tests fail to build in multiple configurations, see
#111099.
@mstorsjo
Copy link
Member

The patch likewise broke the Solaris/amd64 bot.

Thanks - I pushed a revert for this now.

winner245 pushed a commit to winner245/llvm-project that referenced this pull request Oct 26, 2024
Retry pr llvm#109090 with updated extendhfxf2 test
winner245 pushed a commit to winner245/llvm-project that referenced this pull request Oct 26, 2024
This reverts commit 5f7bad0.

These tests fail to build in multiple configurations, see
llvm#111099.
NoumanAmir657 pushed a commit to NoumanAmir657/llvm-project that referenced this pull request Nov 4, 2024
Retry pr llvm#109090 with updated extendhfxf2 test
NoumanAmir657 pushed a commit to NoumanAmir657/llvm-project that referenced this pull request Nov 4, 2024
This reverts commit 5f7bad0.

These tests fail to build in multiple configurations, see
llvm#111099.
arichardson added a commit that referenced this pull request Nov 25, 2024
Retry of pr #109090 and #111099.

Co-authored-by: Alexander Richardson <[email protected]>
@biabbas biabbas deleted the extendhfxf22 branch November 27, 2024 04:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants