-
Notifications
You must be signed in to change notification settings - Fork 13.4k
The LLVM we ship in rust-dev
doesn't match the LLVM we ship in the rustc
component
#110474
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
cc @zhaixiaojuan @heiher, do you know what could be going wrong here? |
@jyn514 Thank you for bringing this to my attention. It is possible that the locally builds has enabled |
Yes, that's exactly what's happened, I have download-ci-llvm enabled and the prebuilt LLVM differs. Here's steps to reproduce:
|
The RustDev component builds LLVM here: Line 2239 in 276fa29
but I'm not sure how that differs from the Rustc component? Lines 456 to 461 in 276fa29
|
I think the difference is that the |
Maybe need to bump download-ci-llvm-stamp to pick up the LoongArch enablement? |
@heiher no worries :) it updates every six weeks when we make a new release, or if the submodule is updated, but it's cached until then so it's not constantly re-uploaded on every change to bootstrap. |
Is there any way CI could help prevent such problems? Like, complain if |
@RalfJung we can use heuristics, but they're only heuristics and I wouldn't want to fail CI on them. That said, having rustbot leave a comment if you touch rustc_llvm or src/bootstrap/llvm.rs seems reasonable, so the PR author can make a judgement call but also doesn't forget about the stamp. |
…acrum Suggest bumping download-ci-llvm-stamp if the build config for llvm changes This will hopefully avoid issues like rust-lang#110474 where the uploaded `rust-dev` component doesn't match the one you'd get if you built LLVM from source. cc rust-lang#110474 (comment)
…acrum Suggest bumping download-ci-llvm-stamp if the build config for llvm changes This will hopefully avoid issues like rust-lang#110474 where the uploaded `rust-dev` component doesn't match the one you'd get if you built LLVM from source. cc rust-lang#110474 (comment)
…acrum Suggest bumping download-ci-llvm-stamp if the build config for llvm changes This will hopefully avoid issues like rust-lang#110474 where the uploaded `rust-dev` component doesn't match the one you'd get if you built LLVM from source. cc rust-lang#110474 (comment)
Suggest bumping download-ci-llvm-stamp if the build config for llvm changes This will hopefully avoid issues like rust-lang/rust#110474 where the uploaded `rust-dev` component doesn't match the one you'd get if you built LLVM from source. cc rust-lang/rust#110474 (comment)
I tried this code:
I expected to see this happen: rustc prints the target spec successfully, because it knows it exists:
Instead, this happened: rustc fails to load the LLVM specification:
Note that this is different from the error we emit for an unrecognized target:
Also, this only happens for local builds, because we don't use the LLVM in the
rust-dev
component in rustup, only when building rustc from source.... wtf ???
Meta
HEAD is branched from ce1073b
The text was updated successfully, but these errors were encountered: