Try to make FieldDef smaller#157986
Conversation
|
@bors try @rust-timer queue |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
Try to make FieldDef smaller
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (289b567): comparison URL. Overall result: ✅ improvements - no action neededBenchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf. @bors rollup=never Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary 6.4%, secondary 2.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 1.4%, secondary 4.9%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeResults (primary -0.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Bootstrap: 522.035s -> 522.066s (0.01%) |
This comment has been minimized.
This comment has been minimized.
|
I'll undraft this for preliminary review, because I want to get some second opinion. This helps to mitigate the perf regression, but feels somewhat arbitrary/ad-hoc to me? I'm not sure if this is the right approach. Also, this exploits the fact that these features are unstable, and used rarely - as soon as the majority of fields in the ecosystem use at least one of those features (presumably the default value in most cases), this will no longer be an optimization. |
|
The parser was modified, potentially altering the grammar of (stable) Rust cc @fmease
cc @rust-lang/clippy
cc @rust-lang/rustfmt |
|
r? @khyperia rustbot has assigned @khyperia. Use Why was this reviewer chosen?The reviewer was selected based on:
|
|
apologies, I've fallen ill and probably won't get around to reviewing this for a while, so I'm rerolling r? compiler |
|
Reminder, once the PR becomes ready for a review, use |
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (aee29e1): comparison URL. Overall result: ✅ improvements - no action neededBenchmarking means the PR may be perf-sensitive. It's automatically marked not fit for rolling up. Overriding is possible but disadvised: it risks changing compiler perf. @bors rollup=never rustc-perf Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (secondary -1.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 1.9%, secondary 2.7%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis perf run didn't have relevant results for this metric. Bootstrap: 489.126s -> 485.679s (-0.70%) |
|
@rustbot ready |
This comment has been minimized.
This comment has been minimized.
|
Some tests are also failing. |
|
Changes to the size of AST and/or HIR nodes. cc @nnethercote |
f94ea58 to
ce94ff5
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
@rustbot ready |
|
r=me after squashing commits. |
ce94ff5 to
283ec3a
Compare
|
Thanks! I squashed the commits but I don't have rights to r= you. Sorry for the churn. @rustbot ready |
|
@bors r+ |
View all comments
Tries to mitigate the regression from #156824. We do this by Option Boxing together all the properties that are only used for unstable features.
fixes #157003