-
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
Shrink hir::def::Res
#101887
Shrink hir::def::Res
#101887
Conversation
@bors try @rust-timer queue |
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
⌛ Trying commit a8492962c36d63271af04d85fb20e811b045bce2 with merge 2e42f14cf381b553c44ffca6fba169be755ea436... |
This comment has been minimized.
This comment has been minimized.
This comment was marked as resolved.
This comment was marked as resolved.
a849296
to
4ca8b9f
Compare
@bors try @rust-timer queue |
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
⌛ Trying commit 4ca8b9fff9022c84a4bee41cacbdc20ceab35dbc with merge cc30719e15b97b59204b625423adb870a39b07ce... |
This comment was marked as resolved.
This comment was marked as resolved.
This comment has been minimized.
This comment has been minimized.
One frustrating thing is that after this change,
Theoretically, A better alternative: change |
4ca8b9f
to
d48b6a9
Compare
@bors try @rust-timer queue |
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
⌛ Trying commit d48b6a9c6c0023d3a4a6fc6db6f2e2dc17d04deb with merge a276ba6fd94b4c292920ebd9bede877948cb9169... |
9c44a36
to
8948feb
Compare
I tried and failed with two
I guess I could allocate the |
☔ The latest upstream changes (presumably #102051) made this pull request unmergeable. Please resolve the merge conflicts. |
8948feb
to
a78f47a
Compare
@petrochenkov: I have addressed the comments and rebased. |
☔ The latest upstream changes (presumably #101454) made this pull request unmergeable. Please resolve the merge conflicts. |
Because this is the only occurrence of a `Res::SelfTy` with `None` and `None` fields, and the next commit will rely on those not being present.
a78f47a
to
92b8cfd
Compare
`Res::SelfTy` currently has two `Option`s. When the second one is `Some` the first one is never consulted. So we can split it into two variants, `Res::SelfTyParam` and `Res::SelfTyAlias`, reducing the size of `Res` from 24 bytes to 12. This then shrinks `hir::Path` and `hir::PathSegment`, which are the HIR types that take up the most space.
92b8cfd
to
f07d4ef
Compare
@bors r+ |
☀️ Test successful - checks-actions |
Finished benchmarking commit (1bb8d27): comparison URL. Overall result: ❌✅ regressions and improvements - ACTION NEEDEDNext Steps: If you can justify the regressions found in this perf run, please indicate this with @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.
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.
Footnotes |
More @rustbot label: +perf-regression-triaged |
r? @spastorino