Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Run tests for dist builds #109535

Closed
Noratrieb opened this issue Mar 23, 2023 · 3 comments
Closed

Run tests for dist builds #109535

Noratrieb opened this issue Mar 23, 2023 · 3 comments
Labels
A-testsuite Area: The testsuite used to check the correctness of rustc T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.

Comments

@Noratrieb
Copy link
Member

We currently run tests for stage 1 and stage 2 builds (I think). So these are guaranteed to pass on tier 1 targets.

But on some targets like x86_64-unknown-linux-gnu we don't ship stage 2 builds, we ship special PGO/BOLT builds that have more optimizations. As we have recently found out in #109067 and #108978, these extra optimizations can lead to miscompilations. We currently have no way to detect this except for users on nightly (or stable as in this case) to see weird behavior. That's very bad.

To do our best to prevent dist miscompilations from shipping, we should find a way to run tests for dist toolchains on targets where extra optimizations are applied.

The dist-x86_64-linux builder is currently one of the slowest builders and running tests in there takes extra time, which would slow down our CI. Ideally we'd find a way to run these tests without impacting CI performance.

@Noratrieb Noratrieb added A-testsuite Area: The testsuite used to check the correctness of rustc T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Mar 23, 2023
@jyn514
Copy link
Member

jyn514 commented Mar 23, 2023

We currently run tests for stage 1 and stage 2 builds (I think)

Nope, stage 2 only.

cc #99141, 7768eaa

@jyn514 jyn514 added T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue. and removed T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) labels Mar 23, 2023
@Kobzol
Copy link
Contributor

Kobzol commented Jul 7, 2023

I think that this can be now closed, because we do run a large part of the test suite on dist builders that perform special optimizations (PGO/LTO/BOLT): #111495

@jyn514
Copy link
Member

jyn514 commented Jul 8, 2023

sounds good - we can open more specific issues as necessary. thanks for working on this!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-testsuite Area: The testsuite used to check the correctness of rustc T-infra Relevant to the infrastructure team, which will review and decide on the PR/issue.
Projects
None yet
Development

No branches or pull requests

3 participants