Skip to content

Conversation

alexrp
Copy link
Member

@alexrp alexrp commented Aug 28, 2025

Closes #23176.

@alexrp

This comment was marked as resolved.

@alexrp alexrp force-pushed the llvm21 branch 3 times, most recently from 07c092c to 2c130c5 Compare August 29, 2025 13:12
alexrp added 24 commits August 30, 2025 06:36
Still only the subset needed for libcxx.
    /lib/std/Target/amdgcn.zig:1656:5: error: evaluation exceeded 1000 backwards branches
        for (&result, 0..) |*elem, i| {
        ^~~
    /lib/std/debug.zig:559:14: error: reached unreachable code
        if (!ok) unreachable; // assertion failure
                 ^~~~~~~~~~~
    /lib/std/Target/riscv.zig:335:21: note: called at comptime here
        std.debug.assert(len <= CpuFeature.Set.needed_bit_count);
        ~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
…uire evex512 for avx512f

Intel has abandoned AVX10.N/128,256; AVX10.N is now always 512-bit.
…bling

Unfortunately, we cannot yet remove the special-casing for RISC-V CPU features,
so that code stays.

Closes #10411.
The former was an LLVM extension that appears to have been removed in LLVM 21.

I won't bother fixing gen_stubs.zig; see #23881.
LLVM 21 has started recognizing strlen-like idioms and optimizing them to strlen
calls, so we need this function provided in compiler-rt for libc-less
compilations.
alexrp added 3 commits August 30, 2025 13:27
Needed because some std.Target.aarch64 features were renamed in LLVM 21.

Signed-off-by: Alex Rønne Petersen <[email protected]>
@alexrp alexrp merged commit 1513143 into master Aug 30, 2025
25 of 26 checks passed
@alexrp alexrp deleted the llvm21 branch August 30, 2025 19:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Tracking issue for the LLVM 21 upgrade

1 participant