Update the minimum external LLVM to 22 - #163572
Conversation
|
This PR changes how LLVM is built. Consider updating src/bootstrap/download-ci-llvm-stamp. Warning If you are changing how CI LLVM is built or linked, make sure to bump cc @jieyouxu |
|
CC @Walnut356 About the minimum LLVM version update - maybe we should bump minimal LLDB too? Not sure if we really need to do anything there, outside of maybe removing some workarounds for old LLDB from the debugger scripts. |
|
I don't know if we want LLDB requirements to be in lock-step here -- the user may be getting that from some other place out of their control, like an SDK. |
Due to the complexity of testing debuggers in CI, we pretty much have to constrain the LLDB versions that we guarantee will work to ~1-3. Whatever version CI is running needs to be one of those 1-3, so we don't end up with silent regressions like we used to.
In this instance I don't think we have to do anything since I originally wrote everything using LLDB 22 anyway. 21 was what we used in CI and it happened to work, so I enabled it there, but I don't think I ever added a minimum version requirement in |
|
Btw, we need external LLVM bumped on the Windows runners anyway, would that be reasonable for this PR, or should we do that in its own? (tbh I'm not sure how to go about it since it requires updating the mirrored LLVM installer) |
This can be done independently -- see https://github.com/rust-lang/ci-mirrors But I think we're also conflating two different ideas of "external LLVM" here. There's the external toolchain we use to compile C and C++ code, including our internal LLVM submodule, and there's the possibility of bringing your own external LLVM library instead of using the submodule. The minimum in this PR is about the latter. |
|
@bors r+ |
There was a problem hiding this comment.
🎉 🎉 that's almost everything blocking f16, if we can figure out something to do with MinGW GCC.
(Not pictured: technically some things are still broken on i586)
Rollup of 8 pull requests Successful merges: - #162556 (Refactor CodeGen Pipeline Setup into a Single Function) - #163254 (rustdoc: Fix where-clause placement of free const items & checked type aliases) - #163621 (core: Unstably constify `abort_immediate`) - #161904 (declare C and C-unwind as mutually ABI-compatible) - #163144 (Add Tier 3 targets for Hyperlight guests) - #163537 (remove unnecessary panic from opsem inhabitedness calculation) - #163570 (Add tests for `!` and `bool`'s size and alignment to `coretests`.) - #163606 (ignore hanging next-solver tests, remove unnecessary ignore test) Failed merges: - #163572 (Update the minimum external LLVM to 22)
This comment was marked as resolved.
This comment was marked as resolved.
Co-authored-by: Augie Fackler <augie@google.com>
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@bors r=nikic |
…uwer Rollup of 9 pull requests Successful merges: - #163655 (explicitly handle tests that pass with -Znext-solver) - #159924 (Send -fno-lto when linker plugin LTO is not requested to avoid having GCC do LTO when using rustc_codegen_gcc) - #163572 (Update the minimum external LLVM to 22) - #129822 (Docs - type guarantees update) - #157973 (Distinguish `repr(C)` ZSTs from others in ABI compatibility rules) - #162332 (preserve overflow in builtin Field candidates) - #163574 (intrinsics: Rename `abort` to `abort_immediate`) - #163638 (avoid trivial `fn map_bound` validations) - #163660 (yeet compare-mode-coherence)
…uwer Rollup of 9 pull requests Successful merges: - #163655 (explicitly handle tests that pass with -Znext-solver) - #159924 (Send -fno-lto when linker plugin LTO is not requested to avoid having GCC do LTO when using rustc_codegen_gcc) - #163572 (Update the minimum external LLVM to 22) - #129822 (Docs - type guarantees update) - #157973 (Distinguish `repr(C)` ZSTs from others in ABI compatibility rules) - #162332 (preserve overflow in builtin Field candidates) - #163574 (intrinsics: Rename `abort` to `abort_immediate`) - #163638 (avoid trivial `fn map_bound` validations) - #163660 (yeet compare-mode-coherence)
Rollup merge of #163572 - cuviper:min-llvm-22, r=nikic Update the minimum external LLVM to 22 With this change, we'll have stable support for LLVM 22 and 23. For reference, the previous increase to LLVM 21 was #153684. cc @rust-lang/wg-llvm @durin42 r? nikic
With this change, we'll have stable support for LLVM 22 and 23.
For reference, the previous increase to LLVM 21 was #153684.
cc @rust-lang/wg-llvm @durin42
r? nikic