bootstrap: don't LTO C dependencies on aarch64 - #161689
Conversation
|
|
6a1a15f to
4bb86a4
Compare
|
@bors try jobs=dist-aarch64* |
This comment has been minimized.
This comment has been minimized.
bootstrap: don't LTO C dependencies on aarch64 try-job: dist-aarch64*
4bb86a4 to
b1f7d8e
Compare
|
What is so special about AArch64? I guess we don't ship LLD there, so turning the condition to allow only |
We also ships bincode-only rlib for Apple targets, and happy with that I believe. |
|
We only saw breakage on aarch64 Linux so far, we're unsure why as of yet. As a hotfix, this seems fine. You can r=me once the try build comes out green and ideally if you can confirm that its artifacts unbork miri. |
I thought the why being that the miri aarch64 job didn't use lld but some GCC linker and not LLVM-bincode compatible, no? |
Nothing, but I want to unblock Miri with a minimal change here. I wasted many hours over multiple days going for a fix that makes sense, I ran out of patience.
That would be a much less minimal change. Feel free to make a PR that further tunes this condition after this one lands and we're finally back to normal operation. The alternative is to revert #161260 as clearly it was landed without us fully grasping the consequences and decisions made in that PR. |
|
Miri looking good. |
bootstrap: don't LTO C dependencies on aarch64 Since rust-lang#161535 apparently may take a while, let's land something to un-break Miri: we know that on aarch64-linux, shipping pure-LTO object files is a bad idea as we can't assume the user has an LTO-capable linker. r? @Kobzol Cc @weihanglo
|
⌛ Testing commit b1f7d8e with merge 107a2d7... Workflow: https://github.com/rust-lang/rust/actions/runs/32785166387 |
bootstrap: don't LTO C dependencies on aarch64 Since #161535 apparently may take a while, let's land something to un-break Miri: we know that on aarch64-linux, shipping pure-LTO object files is a bad idea as we can't assume the user has an LTO-capable linker. r? @Kobzol Cc @weihanglo
|
Auto build was cancelled. Cancelled workflows: The next pull request likely to be tested is #161706. |
Rollup of 9 pull requests Successful merges: - #161689 (bootstrap: don't LTO C dependencies on aarch64) - #161553 (rustdoc: fix issue preventing "read more" links from generating.) - #161670 (Pass LargeDataThreshold to LLVM module IR) - #146529 (rustdoc: Nuke `--passes=list` and defossilize the passes infrastructure) - #156009 (Check `redundant_explicit_links` against generated URLs) - #159583 (Add new `invalid_markdown_table` rustdoc lint) - #161098 (PassWrapper: handle LLVM 24 change in function types) - #161641 (Check for missing rustfmt in the stdarch intrinsic test step sooner) - #161661 (Don't treat slashes as path seps after drive letters in verbatim paths) Failed merges: - #156749 (remove `box_patterns`)
Probably because we don't LTO other Linux hosts?
I have no clue about Apple targets tooling, but we don't do LTO of the C/C++ code there. Searching for |
Rollup merge of #161689 - RalfJung:aarch64-no-lto, r=Kobzol bootstrap: don't LTO C dependencies on aarch64 Since #161535 apparently may take a while, let's land something to un-break Miri: we know that on aarch64-linux, shipping pure-LTO object files is a bad idea as we can't assume the user has an LTO-capable linker. r? @Kobzol Cc @weihanglo
|
FWIW on apple we do something with LTO and C dependencies that causes warnings: #161561 |
Since #161535 apparently may take a while, let's land something to un-break Miri: we know that on aarch64-linux, shipping pure-LTO object files is a bad idea as we can't assume the user has an LTO-capable linker.
r? @Kobzol
Cc @weihanglo