-
Notifications
You must be signed in to change notification settings - Fork 12.9k
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
Remove MIR unsafe check #123322
Remove MIR unsafe check #123322
Conversation
r? @Nadrieril rustbot has assigned @Nadrieril. Use |
Some changes occurred in match lowering cc @Nadrieril Some changes occurred to MIR optimizations cc @rust-lang/wg-mir-opt |
This comment has been minimized.
This comment has been minimized.
1f07c6b
to
5385ae3
Compare
This comment has been minimized.
This comment has been minimized.
5385ae3
to
c10ad18
Compare
This is a very satisfying PR :D Implementation looks good, I'd like someone else to confirm that this is a good idea; @compiler-errors? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm curious if y'all think this needs an additional FCP given that the FCP in #117673 seemed to exclude the changes to MIR building and removing MIR unsafeck.
The changes look good to me tho.
If anything, it's worth a ping to @rust-lang/compiler for the MIR changes and @rust-lang/lang for the removal of MIR unsafeck (i.e. full commitment to THIR unsafeck).
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
…=<try> Remove MIR unsafe check Now that THIR unsafeck is enabled by default in stable I think we can remove MIR unsafeck entirely. This PR also removes safety information from MIR.
Given that |
I don't think anything is needed here from lang. Personally I'd consider it removing off-in-stable code in rustc, which is entirely up to compiler. |
☀️ Try build successful - checks-actions |
This comment has been minimized.
This comment has been minimized.
Finished benchmarking commit (361ad8e): comparison URL. Overall result: ❌✅ regressions and improvements - no action neededBenchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR may lead to changes in compiler perf. @bors rollup=never Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis 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.
CyclesResultsThis 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.
Binary sizeResultsThis 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.
Bootstrap: 669.168s -> 667.487s (-0.25%) |
Changes look like noise |
@@ -909,11 +909,6 @@ impl UnsafeOpKind { | |||
} | |||
|
|||
pub fn check_unsafety(tcx: TyCtxt<'_>, def: LocalDefId) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
in separate PR: should this get moved into its own crate rustc_thir_unsafeck
or rustc_thir_analysis
?
💔 Test failed - checks-actions |
c10ad18
to
2645e60
Compare
@bors r=lcnr,compiler-errors |
🔒 Merge conflict This pull request and the master branch diverged in a way that cannot be automatically merged. Please rebase on top of the latest master branch, and let the reviewer approve again. How do I rebase?Assuming
You may also read Git Rebasing to Resolve Conflicts by Drew Blessing for a short tutorial. Please avoid the "Resolve conflicts" button on GitHub. It uses Sometimes step 4 will complete without asking for resolution. This is usually due to difference between how Error message
|
☔ The latest upstream changes (presumably #123385) made this pull request unmergeable. Please resolve the merge conflicts. |
This also remove safety information from MIR.
2645e60
to
a277c90
Compare
@bors r=lcnr,compiler-errors p=1 (prone to merge conflicts apparently) |
☀️ Test successful - checks-actions |
Finished benchmarking commit (99c42d2): comparison URL. Overall result: ❌✅ regressions and improvements - no action needed@rustbot label: -perf-regression Instruction countThis is a highly reliable metric that was used to determine the overall result at the top of this comment.
Max RSS (memory usage)ResultsThis 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.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeResultsThis 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.
Bootstrap: 667.159s -> 668.489s (0.20%) |
…=lcnr,compiler-errors Remove MIR unsafe check Now that THIR unsafeck is enabled by default in stable I think we can remove MIR unsafeck entirely. This PR also removes safety information from MIR.
Now that THIR unsafeck is enabled by default in stable I think we can remove MIR unsafeck entirely. This PR also removes safety information from MIR.