Uh oh!
There was an error while loading. Please reload this page.
resolve: Cache module loading for all foreign modules - #89239
Conversation
petrochenkov
commented
Sep 25, 2021
@bors try @rust-timer queue |
rust-timer
commented
Sep 25, 2021
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
bors
commented
Sep 25, 2021
⌛ Trying commit 3540ab1b57946e30e9819a2ae728097f570ffa98 with merge 46cc8acbde83e77d3533062bd987267715fc05eb... |
This comment has been minimized.
This comment has been minimized.
bors
commented
Sep 25, 2021
☀️ Try build successful - checks-actions |
rust-timer
commented
Sep 25, 2021
Queued 46cc8acbde83e77d3533062bd987267715fc05eb with parent 7342213, future comparison URL. |
rust-timer
commented
Sep 25, 2021
Finished benchmarking commit (46cc8acbde83e77d3533062bd987267715fc05eb): comparison url. Summary: This change led to large relevant regressions 😿 in compiler performance.
If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. Benchmarking this pull request likely means that it is perf-sensitive, so we're automatically marking it as not fit for rolling up. While you can manually mark this PR as fit for rollup, we strongly recommend not doing so since this PR led to changes in compiler perf. Next Steps: If you can justify the regressions found in this try perf run, please indicate this with @bors rollup=never |
petrochenkov
commented
Sep 25, 2021
This is a correctness fix (for macros 2.0, I'll try to add a test case, e.g. with a macro 2.0 using The largest regression ( |
petrochenkov
commented
Sep 26, 2021
Updated. |
cjgillot
commented
Sep 26, 2021
@bors try @rust-timer queue |
rust-timer
commented
Sep 26, 2021
Awaiting bors try build completion. @rustbot label: +S-waiting-on-perf |
bors
commented
Sep 26, 2021
⌛ Trying commit bfc2b31a4ee5890829adfc7c260ee39cbd0c749f with merge 6e3cd17ee9b9b29b92ebe126cd606f7adb0e7307... |
This comment has been minimized.
This comment has been minimized.
bors
commented
Sep 26, 2021
☀️ Try build successful - checks-actions |
rust-timer
commented
Sep 26, 2021
Queued 6e3cd17ee9b9b29b92ebe126cd606f7adb0e7307 with parent ac8dd1b, future comparison URL. |
bors
commented
Oct 2, 2021
📌 Commit a0d70bd224f0510cea6b0be6c2d0d276d17af5d9 has been approved by |
bors
commented
Oct 2, 2021
⌛ Testing commit a0d70bd224f0510cea6b0be6c2d0d276d17af5d9 with merge 59f8b8d94bffcbd19f5c39f823c9f970f823bfac... |
This comment has been minimized.
This comment has been minimized.
bors
commented
Oct 2, 2021
💔 Test failed - checks-actions |
It was previously cached for modules loaded from `fn get_module`, but not for modules loaded from `fn build_reduced_graph_for_external_crate_res`. This also makes all foreign modules use their real parent, span and expansion instead of possibly a parent/span/expansion of their reexport. An ICE happening on attempt to decode expansions for foreign enums and traits is avoided. Also local enums and traits are now added to the module map.
It makes all block modules identical during comparison
petrochenkov
commented
Oct 2, 2021
@bors r=cjgillot |
bors
commented
Oct 2, 2021
📌 Commit d7d0765 has been approved by |
bors
commented
Oct 2, 2021
bors
commented
Oct 2, 2021
☀️ Test successful - checks-actions |
rust-timer
commented
Oct 2, 2021
Finished benchmarking commit (d14731c): comparison url. Summary: This benchmark run did not return any relevant changes. If you disagree with this performance assessment, please file an issue in rust-lang/rustc-perf. @rustbot label: -perf-regression |
Mark-Simulacrum
commented
Oct 5, 2021
@rustbot label +perf-regression-triaged |
It was previously cached for modules loaded from
fn get_module, but not for modules loaded fromfn build_reduced_graph_for_external_crate_res.This also makes all foreign modules use their real parent, span and expansion instead of possibly a parent/span/expansion of their reexport.
Modules are also often compared using referential equality (
ptr::eq), this change makes such comparisons correct in all cases.An ICE happening on attempt to decode expansions for foreign enums and traits is avoided.
Also local enums and traits are now added to the module map.
Follow up to #88872.
r? @cjgillot