borrowck: Simplify deps to build compiler 30s faster - #160358
borrowck: Simplify deps to build compiler 30s faster#160358joshtriplett wants to merge 2 commits into
Conversation
… it from there `rustc_borrowck` uses `type_op_prove_predicate_with_cause` from `rustc_traits`, but is a simple helper that can live in `rustc_trait_selection` instead. Move it there.
|
r? @TaKO8Ki rustbot has assigned @TaKO8Ki. Use Why was this reviewer chosen?The reviewer was selected based on:
|
This comment has been minimized.
This comment has been minimized.
`rustc_borrowck` now only uses `rustc_traits` for one helper that it re-exports from `rustc_trait_selection`. Use the helper directly from `rustc_trait_selection`, and eliminate the dependency.
33ec3dd to
425c312
Compare
|
These commits modify the If this was unintentional then you should revert the changes before this PR is merged. |
|
@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.
borrowck: Simplify deps to build compiler 30s faster
This comment has been minimized.
This comment has been minimized.
|
Finished benchmarking commit (f1bf412): comparison URL. Overall result: no relevant changes - no action neededBenchmarking means the PR may be perf-sensitive. Consider adding rollup=never if this change is not fit for rolling up. @rustbot label: -S-waiting-on-perf -perf-regression Instruction countThis perf run didn't have relevant results for this metric. Max RSS (memory usage)Results (primary 3.4%, secondary 0.5%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (primary 0.1%, secondary -0.4%)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: 490.553s -> 487.967s (-0.53%) |
|
AIUI, the perf suite bootstrap timing uses |
rustc_borrowckuses two helpers fromrustc_traits. One of them is re-exported fromrustc_trait_selection, and the other can easily move torustc_trait_selection.Making
rustc_borrowckuse these helpers fromrustc_trait_selectiondirectly, and eliminating therustc_traitsdependency, allows starting to buildrustc_borrowckearlier, which substantially speeds up building the compiler becauserustc_borrowckis one of the last things to build.On my system, this speeds up the rustc build by a little over 30s.