Uh oh!
There was an error while loading. Please reload this page.
Remove DepKind::CrateMetadata and pre-allocation of DepNodes - #80602
Conversation
rust-highfive
commented
Jan 1, 2021
r? @lcnr (rust-highfive has picked a reviewer for you, use r? to override) |
tgnottingham
commented
Jan 1, 2021
@rustbot label T-compiler A-incr-comp |
tgnottingham
commented
Jan 1, 2021
This also removes an optimization around registration of the crate metadata dependency, but I'm happy to add it back if necessary. Locally, the perf impact seemed to be small, so I think the simplification may be worth it. This also relates to logic affecting #62649. That issue has a lot of confusion around it, and this change will help make reasoning about it easier. I will follow-up with that issue at some point. |
Aaron1011
commented
Jan 1, 2021
@bors try @rust-timer queue |
rust-timer
commented
Jan 1, 2021
Awaiting bors try build completion. |
bors
commented
Jan 1, 2021
⌛ Trying commit a3c3735cefaf039ec7f45e46f858ba2d641c5138 with merge a9d18ad03c95138870091e989d84f332af0a0b23... |
rust-log-analyzer
commented
Jan 1, 2021
The job Click to see the possible cause of the failure (guessed by this bot) |
a3c3735 to
de92295Comparetgnottingham
commented
Jan 1, 2021
I really need to automate |
de92295 to
ef71435Comparecjgillot
commented
Jan 2, 2021
The command seems to have been lost. |
rust-timer
commented
Jan 2, 2021
Awaiting bors try build completion. |
bors
commented
Jan 2, 2021
⌛ Trying commit ef71435e28c6743397d22957685a397b1e419da7 with merge 6da8d0299f5b2280b306e89ebfd7cb6902fcab5f... |
bors
commented
Jan 2, 2021
☀️ Try build successful - checks-actions |
rust-timer
commented
Jan 2, 2021
Queued 6da8d0299f5b2280b306e89ebfd7cb6902fcab5f with parent 929f66a, future comparison URL. @rustbot label: +S-waiting-on-perf |
rust-timer
commented
Jan 2, 2021
Finished benchmarking try commit (6da8d0299f5b2280b306e89ebfd7cb6902fcab5f): 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 |
tgnottingham
commented
Jan 2, 2021
Perf is neutral, which is good. |
michaelwoerister
commented
Jan 5, 2021
Interesting idea! I hope I'll be able to review this next week. |
Uh oh!
There was an error while loading. Please reload this page.
cjgillot
left a comment
There was a problem hiding this comment.
This PR effectively replaces the creation of a dedicated DepNode for each crate by using the DepNode corresponding to the crate_hash query. Since the former behaviour based the greenness of the crate DepNode on this very crate_hash, there should be no change in the incremental behaviour.
Uh oh!
There was an error while loading. Please reload this page.
65da797 to
0525d28Comparetgnottingham
commented
Jan 6, 2021
Addressed comments and rebased to fix a conflict. |
bors
commented
Jan 8, 2021
☔ The latest upstream changes (presumably #78452) made this pull request unmergeable. Please resolve the merge conflicts. |
0525d28 to
3cbe0adCompare
michaelwoerister
left a comment
There was a problem hiding this comment.
This is a great find, @tgnottingham! It lets us get rid of quite a bit of special casing indeed. r=me with the comment below addressed.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
bors
commented
Jan 12, 2021
☔ The latest upstream changes (presumably #80463) made this pull request unmergeable. Please resolve the merge conflicts. |
Remove much of the special-case handling around crate metadata dependency tracking by replacing `DepKind::CrateMetadata` and the pre-allocation of corresponding `DepNodes` with on-demand invocation of the `crate_hash` query.
9bc5aa9 to
8e7cbc2Comparetgnottingham
commented
Jan 15, 2021
Thank you for the review @michaelwoerister! Addressed your comments. |
pnkfelix
commented
Jan 15, 2021
@bors r=michaelwoerister |
bors
commented
Jan 15, 2021
📌 Commit 8e7cbc2 has been approved by |
bors
commented
Jan 15, 2021
bors
commented
Jan 16, 2021
☀️ Test successful - checks-actions |
Remove much of the special-case handling around crate metadata
dependency tracking by replacing
DepKind::CrateMetadataand thepre-allocation of corresponding
DepNodeswith on-demand invocationof the
crate_hashquery.