Skip to content

Perform ThinLTO on x86_64-pc-windows-msvc dist builder#128947

Open
Zoxc wants to merge 2 commits into
rust-lang:mainfrom
Zoxc:thinlto-msvc
Open

Perform ThinLTO on x86_64-pc-windows-msvc dist builder#128947
Zoxc wants to merge 2 commits into
rust-lang:mainfrom
Zoxc:thinlto-msvc

Conversation

@Zoxc

@Zoxc Zoxc commented Aug 10, 2024

Copy link
Copy Markdown
Contributor

View all comments

This reenables ThinLTO on x86_64-pc-windows-msvc.

try-job: dist-x86_64-msvc

@rustbot

rustbot commented Aug 10, 2024

Copy link
Copy Markdown
Collaborator

r? @TaKO8Ki

rustbot has assigned @TaKO8Ki.
They will have a look at your PR within the next two weeks and either review your PR or reassign to another reviewer.

Use r? to explicitly pick a reviewer

@rustbot rustbot added A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. labels Aug 10, 2024
@jieyouxu

Copy link
Copy Markdown
Member

FYI @rust-lang/infra

@lqd

lqd commented Aug 11, 2024

Copy link
Copy Markdown
Member

I don't think we're in a situation where we can yet have a definite yes/no answer for this PR yet.

Marking as blocked on #122790. The discussions and underlying issues there shouldn't be split amongst PRs.

@rustbot blocked

@rustbot rustbot added S-blocked Status: Blocked on something else such as an RFC or other implementation work. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Aug 11, 2024
@bors

bors commented Sep 20, 2024

Copy link
Copy Markdown
Collaborator

☔ The latest upstream changes (presumably #130506) made this pull request unmergeable. Please resolve the merge conflicts.

@Zoxc

Zoxc commented Mar 11, 2025

Copy link
Copy Markdown
Contributor Author

@rustbot ready

This is no longer blocked, at least not on my previous PR.

Are the binaries built by dist jobs properly tested now?
Are there any other knowns issues with ThinLTO on Windows?

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-blocked Status: Blocked on something else such as an RFC or other implementation work. labels Mar 11, 2025
@Kobzol

Kobzol commented Mar 11, 2025

Copy link
Copy Markdown
Member

They are tested, not sure if properly :) Last time we tried it, one test was still miscompiled, we could try again.

  • comment out DIST_TRY_BUILD insrc/ci/github-actions/jobs.yml
  • add a line try-job: dist-x86_64-msvc to the PR description
  • run a try build

@jieyouxu

jieyouxu commented Mar 11, 2025

Copy link
Copy Markdown
Member

They are tested, not sure if properly :)

As far as I know, Windows dist artifacts are not tested at all (note that dist artifacts are not necessarily equivalent to test job artifacts; and usually they are not equivalent due to configuration differences). We do have Windows test jobs that run the full test suites but they aren't testing the dist artifacts.

EDIT: x86_64-pc-windows-msvc goes through opt-dist but not the other i686-pc-windows-msvc apparently.

Recently we broke i686-pc-windows-gnu rustc binaries in a way that caused rustc binary to completely not work (rustc -vV failed) but no tests caught it.

@lqd

lqd commented Mar 11, 2025

Copy link
Copy Markdown
Member

As far as I know, Windows dist artifacts are not tested at all

We do test dist x64 msvc artifacts in opt-dist.

@jieyouxu

jieyouxu commented Mar 11, 2025

Copy link
Copy Markdown
Member

Huh. I must be thinking of x86_64 windows-gnu or maybe the 32 bit windows-msvc target?

EDIT: in any case you're right:

https://github.com/rust-lang/rust/blob/master/src%2Fci%2Fgithub-actions%2Fjobs.yml#L584

@Kobzol

Kobzol commented Mar 13, 2025

Copy link
Copy Markdown
Member

@bors try

bors added a commit to rust-lang-ci/rust that referenced this pull request Mar 13, 2025
Perform ThinLTO on x86_64-pc-windows-msvc dist builder

This reenables ThinLTO on x86_64-pc-windows-msvc.

Depends on rust-lang#122790

try-job: dist-x86_64-msvc
@bors

bors commented Mar 13, 2025

Copy link
Copy Markdown
Collaborator

⌛ Trying commit 3d3aba0 with merge b9d7ae0...

@rust-log-analyzer

This comment has been minimized.

@bors

bors commented Mar 13, 2025

Copy link
Copy Markdown
Collaborator

💔 Test failed - checks-actions

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Mar 13, 2025
@Kobzol

Kobzol commented Mar 13, 2025

Copy link
Copy Markdown
Member

@bors try

@bors

bors commented Mar 13, 2025

Copy link
Copy Markdown
Collaborator

⌛ Trying commit a832199 with merge 359c9af...

@rust-log-analyzer

This comment has been minimized.

@rust-bors

rust-bors Bot commented Sep 25, 2025

Copy link
Copy Markdown
Contributor

💔 Test for 74ab0d8 failed: CI. Failed jobs:

@Zoxc

Zoxc commented Jan 27, 2026

Copy link
Copy Markdown
Contributor Author

@bors try

rust-bors Bot pushed a commit that referenced this pull request Jan 27, 2026
Perform ThinLTO on x86_64-pc-windows-msvc dist builder

try-job: dist-x86_64-msvc
@rust-bors

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-bors

rust-bors Bot commented Jan 27, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 9f3fcfb failed: CI. Failed job:

@rustbot

rustbot commented Jul 26, 2026

Copy link
Copy Markdown
Collaborator

Warning

If you are changing how CI LLVM is built or linked, make sure to bump
src/bootstrap/download-ci-llvm-stamp.

cc @jieyouxu

@rustbot rustbot added the T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) label Jul 26, 2026
@rustbot

This comment has been minimized.

@Zoxc

Zoxc commented Jul 26, 2026

Copy link
Copy Markdown
Contributor Author

@bors try

@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jul 26, 2026
Perform ThinLTO on x86_64-pc-windows-msvc dist builder

try-job: dist-x86_64-msvc
@rust-log-analyzer

This comment has been minimized.

@rust-bors

rust-bors Bot commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

💔 Test for 6399134 failed: CI. Failed job:

@rust-log-analyzer

This comment has been minimized.

@Zoxc

Zoxc commented Jul 26, 2026

Copy link
Copy Markdown
Contributor Author

@bors try

@rust-bors

This comment has been minimized.

rust-bors Bot pushed a commit that referenced this pull request Jul 26, 2026
Perform ThinLTO on x86_64-pc-windows-msvc dist builder

try-job: dist-x86_64-msvc
@rust-log-analyzer

This comment has been minimized.

@rust-bors

rust-bors Bot commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

☀️ Try build successful (CI)
Build commit: bade842 (bade8423709cf67d44e2e352dc9a078bb939b837)
Base parent: 008fa22 (008fa22ce3f8d3c8dfaca2e6486043c2b21851eb)

@Zoxc

Zoxc commented Jul 26, 2026

Copy link
Copy Markdown
Contributor Author

Claude Opus 5 was able to spot that tool LTO builds were affected by rust-lang/cargo#14575. I've worked around that.

Might want to wait on #158734 in case that cause issues.

@rustbot ready

@rustbot rustbot added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jul 26, 2026
@rustbot

rustbot commented Jul 26, 2026

Copy link
Copy Markdown
Collaborator

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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-CI Area: Our Github Actions CI A-testsuite Area: The testsuite used to check the correctness of rustc S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

8 participants