-
Notifications
You must be signed in to change notification settings - Fork 13.2k
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
Box all fields of ast::*ItemKind #81683
Conversation
r? @lcnr (rust-highfive has picked a reviewer for you, use r? to override) |
Some variants have boxed fields which can now be inlined. I intend to clean those up where possible in a future PR. |
@bors try @rust-timer queue |
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
⌛ Trying commit c12a8ca with merge cfa444729c2a1a0ea8ba7a394e8bed7d5fad6011... |
☀️ Try build successful - checks-actions |
Queued cfa444729c2a1a0ea8ba7a394e8bed7d5fad6011 with parent 3182375, future comparison URL. |
Finished benchmarking try commit (cfa444729c2a1a0ea8ba7a394e8bed7d5fad6011): 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 |
Around .5% regressions in several doc benchmarks. max-rss shows varied results. |
Follow up to #81405, this PR boxes all fields, making
ast::ItemKind
,ast::AssocItemKind
andast::ForeignItemKind
all 16 bytes. This results in less wasted memory when the smaller variants are instantiated a lot.