Skip to content

Update bootstrap compiler to 1.65.0 #102051

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

Merged
merged 7 commits into from
Sep 26, 2022

Conversation

pietroalbini
Copy link
Member

This PR updates the bootstrap compiler to Rust 1.65.0, removing the various cfg(bootstrap)s.

r? @Mark-Simulacrum

@rustbot rustbot added A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. T-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue. labels Sep 20, 2022
@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Sep 20, 2022
@rustbot

This comment was marked as resolved.

@Urgau
Copy link
Member

Urgau commented Sep 20, 2022

Checking rustc_codegen_cranelift v0.1.0 (/checkout/compiler/rustc_codegen_cranelift)
error: unexpected parallel_compiler as condition name
|
= note: -D unexpected-cfgs implied by -D warnings
= help: was set with --cfg but isn't in the --check-cfg expected names

Seems like rustc_codegen_cranelift is neither compiled as Mode::Rustc nor as Mode::ToolRustc:

rust/src/bootstrap/lib.rs

Lines 199 to 200 in 8fd6d03

(Some(Mode::Rustc), "parallel_compiler", None),
(Some(Mode::ToolRustc), "parallel_compiler", None),


Adding the same previous line but with Mode::Codegen should fix the build error:

     (Some(Mode::ToolRustc), "parallel_compiler", None),
+    (Some(Mode::Codegen), "parallel_compiler", None),

Sorry for the inconvenience should have checked more closely when adding those.

@rustbot rustbot added the T-bootstrap Relevant to the bootstrap subteam: Rust's build system (x.py and src/bootstrap) label Sep 20, 2022
@pietroalbini
Copy link
Member Author

Thanks for the quick comment! Applied your patch.

@rust-log-analyzer

This comment has been minimized.

@Mark-Simulacrum
Copy link
Member

tidy error: /checkout/src/test/mir-opt/issue-101867.rs: leading newline

r=me with CI fixed.

@Mark-Simulacrum Mark-Simulacrum 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 Sep 21, 2022
@pietroalbini
Copy link
Member Author

@bors r=Mark-Simulacrum p=1

@bors
Copy link
Collaborator

bors commented Sep 21, 2022

📌 Commit f026e117b0b5c28ce4a9d1eb53d46b628e58699e has been approved by Mark-Simulacrum

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Sep 21, 2022
@bors
Copy link
Collaborator

bors commented Sep 21, 2022

⌛ Testing commit f026e117b0b5c28ce4a9d1eb53d46b628e58699e with merge 0ddedcf0f320ec78233123ef8517d7c43acccd55...

@bors
Copy link
Collaborator

bors commented Sep 21, 2022

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Sep 21, 2022
@Mark-Simulacrum
Copy link
Member

 failures:

---- [mir-opt] src/test/mir-opt/issue-101867.rs stdout ----
1	// MIR for `main` 0 mir_map
2	
3	| User Type Annotations
-	| 0: user_ty: Canonical { max_universe: U0, variables: [], value: Ty(std::option::Option<u8>) }, span: $DIR/issue-101867.rs:5:12: 5:22, inferred_ty: std::option::Option<u8>
-	| 1: user_ty: Canonical { max_universe: U0, variables: [], value: Ty(std::option::Option<u8>) }, span: $DIR/issue-101867.rs:5:12: 5:22, inferred_ty: std::option::Option<u8>
+	| 0: user_ty: Canonical { max_universe: U0, variables: [], value: Ty(std::option::Option<u8>) }, span: $DIR/issue-101867.rs:3:12: 3:22, inferred_ty: std::option::Option<u8>
+	| 1: user_ty: Canonical { max_universe: U0, variables: [], value: Ty(std::option::Option<u8>) }, span: $DIR/issue-101867.rs:3:12: 3:22, inferred_ty: std::option::Option<u8>
6	|
7	fn main() -> () {
8	    let mut _0: ();                      // return place in scope 0 at $DIR/issue-101867.rs:+0:11: +0:11

thread '[mir-opt] src/test/mir-opt/issue-101867.rs' panicked at 'Actual MIR output differs from expected MIR output /checkout/src/test/mir-opt/issue_101867.main.mir_map.0.mir', src/tools/compiletest/src/runtest.rs:3515:25
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace

@Mark-Simulacrum Mark-Simulacrum 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 Sep 21, 2022
@pietroalbini
Copy link
Member Author

@bors r=Mark-Simulacrum

@bors
Copy link
Collaborator

bors commented Sep 21, 2022

📌 Commit df752e839c0f43b0eb8dec050757691210770f5a has been approved by Mark-Simulacrum

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Sep 21, 2022
@pietroalbini
Copy link
Member Author

@davidtwco yeah it's better to do it in a followup PR.

@rust-log-analyzer
Copy link
Collaborator

A job failed! Check out the build log: (web) (plain)

Click to see the possible cause of the failure (guessed by this bot)

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (e1d7dec): comparison URL.

Overall result: ❌ regressions - ACTION NEEDED

Next Steps: If you can justify the regressions found in this perf run, please indicate this with @rustbot label: +perf-regression-triaged along with sufficient written justification. If you cannot justify the regressions please open an issue or create a new PR that fixes the regressions, add a comment linking to the newly created issue or PR, and then add the perf-regression-triaged label to this PR.

@rustbot label: +perf-regression
cc @rust-lang/wg-compiler-performance

Instruction count

This is a highly reliable metric that was used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
0.7% [0.7%, 0.7%] 1
Regressions ❌
(secondary)
1.4% [1.2%, 1.6%] 6
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) 0.7% [0.7%, 0.7%] 1

Max RSS (memory usage)

Results

This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.

mean1 range count2
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
- - 0
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
-2.8% [-3.5%, -2.0%] 2
All ❌✅ (primary) - - 0

Cycles

This benchmark run did not return any relevant results for this metric.

Footnotes

  1. the arithmetic mean of the percent change 2

  2. number of relevant changes 2

@rustbot rustbot added the perf-regression Performance regression. label Sep 26, 2022
@nnethercote
Copy link
Contributor

keccak has been noisy recently, these regressions probably aren't real.

@rustbot label: +perf-regression-triaged

@rustbot rustbot added the perf-regression-triaged The performance regression has been triaged. label Sep 26, 2022
davidtwco added a commit to davidtwco/rust that referenced this pull request Sep 27, 2022
In rust-lang#101230, the internal diagnostic migration lints -
`diagnostic_outside_of_impl` and `untranslatable_diagnostic` - were
modified so that they wouldn't trigger on functions annotated with
`#[rustc_lint_diagnostics]`. However, this change has to make it into
the bootstrap compiler before the `#[allow]` annotations that it aims to
remove can be removed, which is possible now that rust-lang#102051 has landed.

Signed-off-by: David Wood <david.wood@huawei.com>
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this pull request Sep 27, 2022
…mp-allow-lint, r=lcnr

session: remove now-unnecessary lint `#[allow]`s

In rust-lang#101230, the internal diagnostic migration lints - `diagnostic_outside_of_impl` and `untranslatable_diagnostic` - were modified so that they wouldn't trigger on functions annotated with `#[rustc_lint_diagnostics]`. However, this change has to make it into the bootstrap compiler before the `#[allow]` annotations that it aims to remove can be removed, which is possible now that rust-lang#102051 has landed.
Dylan-DPC added a commit to Dylan-DPC/rust that referenced this pull request Sep 27, 2022
…mp-allow-lint, r=lcnr

session: remove now-unnecessary lint `#[allow]`s

In rust-lang#101230, the internal diagnostic migration lints - `diagnostic_outside_of_impl` and `untranslatable_diagnostic` - were modified so that they wouldn't trigger on functions annotated with `#[rustc_lint_diagnostics]`. However, this change has to make it into the bootstrap compiler before the `#[allow]` annotations that it aims to remove can be removed, which is possible now that rust-lang#102051 has landed.
@Mark-Simulacrum
Copy link
Member

Confirming noise - see #102292 (comment) for some graphs.

fee1-dead added a commit to fee1-dead-contrib/rust that referenced this pull request Sep 27, 2022
…mp-allow-lint, r=lcnr

session: remove now-unnecessary lint `#[allow]`s

In rust-lang#101230, the internal diagnostic migration lints - `diagnostic_outside_of_impl` and `untranslatable_diagnostic` - were modified so that they wouldn't trigger on functions annotated with `#[rustc_lint_diagnostics]`. However, this change has to make it into the bootstrap compiler before the `#[allow]` annotations that it aims to remove can be removed, which is possible now that rust-lang#102051 has landed.
matthiaskrgr added a commit to matthiaskrgr/rust that referenced this pull request Sep 27, 2022
…mp-allow-lint, r=lcnr

session: remove now-unnecessary lint `#[allow]`s

In rust-lang#101230, the internal diagnostic migration lints - `diagnostic_outside_of_impl` and `untranslatable_diagnostic` - were modified so that they wouldn't trigger on functions annotated with `#[rustc_lint_diagnostics]`. However, this change has to make it into the bootstrap compiler before the `#[allow]` annotations that it aims to remove can be removed, which is possible now that rust-lang#102051 has landed.
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
A-query-system Area: The rustc query system (https://rustc-dev-guide.rust-lang.org/query.html) merged-by-bors This PR was explicitly merged by bors. perf-regression Performance regression. perf-regression-triaged The performance regression has been triaged. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. 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-libs Relevant to the library team, which will review and decide on the PR/issue. T-rustdoc Relevant to the rustdoc team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

10 participants