-
Notifications
You must be signed in to change notification settings - Fork 12.8k
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
datastructures: replace once_cell
crate with an impl from std
#76075
Conversation
src/librustc_interface/lib.rs
Outdated
@@ -4,6 +4,7 @@ | |||
#![feature(nll)] | |||
#![feature(generator_trait)] | |||
#![feature(generators)] | |||
#![feature(once_cell)] |
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 would've expected import changes as well - is this coming from a macro or something like that? If so that should get a allow_internal_unstable annotation instead, probably
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 am not exactly sure what you are referring to, but in src/librustc_interface/passes.rs
and src/librustc_interface/queries.rs
the code imports OnceCell
re-exported from librustc_datastructures
.
Side note: there is also an explicit import (and thus a dependency on the crate) of once_cell::sync::OnceCell
in src/librustc_interface/util.rs
though and I don't know if that should be updated to use the impl from std.
b8e4b77
to
2ced222
Compare
@bors try @rust-timer queue |
Awaiting bors try build completion |
⌛ Trying commit 2ced2226acb1f6fd027e87e5918e81db8320505b with merge e1c8714b3f420be20f3c670b7ad84eccbe252b26... |
☀️ Try build successful - checks-actions, checks-azure |
Queued e1c8714b3f420be20f3c670b7ad84eccbe252b26 with parent 5c27700, future comparison URL. |
Finished benchmarking try commit (e1c8714b3f420be20f3c670b7ad84eccbe252b26): comparison url. Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. Please note that if the perf results are neutral, you should likely undo the rollup=never given below by specifying Importantly, though, if the results of this run are non-neutral do not roll this PR up -- it will mask other regressions or improvements in the roll up. @bors rollup=never |
Nice, basically no change in instructions but significantly less max-rss :) |
@jyn514 think that it is to little data to say anything about the max-rss due to how big the variance is if you look at perf graphs you will see that eg. keccak-debug have varied between -10% to +20%. |
Yeah, I would be very surprised if the perf turned out to be non-neutral on this one ! @bors r+ rollup Let’s change direct usages of once_cell and lazy_static crates to std::lazy in a separate PR. I am not sure about the policy of using librustc_datastructures re-export vs direct use, but it should always be safe to not change this particular aspect. |
📌 Commit 2ced2226acb1f6fd027e87e5918e81db8320505b has been approved by |
☔ The latest upstream changes (presumably #74862) made this pull request unmergeable. Please resolve the merge conflicts. |
2ced222
to
68500ff
Compare
@bors r=matklad |
@marmeladema: 🔑 Insufficient privileges: Not in reviewers |
@matklad I need another approval from your part I believe 👍 |
@bors delegate+ |
✌️ @marmeladema can now approve this pull request |
@bors r=matklad |
📌 Commit 68500ff has been approved by |
Rollup of 5 pull requests Successful merges: - rust-lang#75938 (Added some `min_const_generics` revisions into `const_generics` tests) - rust-lang#76050 (Remove unused function) - rust-lang#76075 (datastructures: replace `once_cell` crate with an impl from std) - rust-lang#76115 (Restore public visibility on some parsing functions for rustfmt) - rust-lang#76127 (rustbuild: Remove one LLD workaround) Failed merges: r? @ghost
Fixes #75700
r? @matklad
We might need a perf run for this change.