-
Notifications
You must be signed in to change notification settings - Fork 13.4k
Don't serialize ExpnData for foreign crates #75137
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
Conversation
When we encode an ExpnId into the crate metadata, we write out the CrateNum of the crate that 'owns' the corresponding `ExpnData`, which is later used to decode the `ExpnData` from its owning crate. However, we current serialize the `ExpnData` for all `ExpnIds` that we serialize, even if the `ExpnData` was already serialized into a foreign crate. This commit skips encoding this kind of `ExpnData`, which should hopefully speed up metadata encoding and reduce the total metadata size.
r? @varkor (rust_highfive has picked a reviewer for you, use r? to override) |
@bors try @rust-timer queue |
Awaiting bors try build completion |
⌛ Trying commit 955aebf with merge ff53b385efadfa63cfbf4e38c45243f95886d9cd... |
☀️ Try build successful - checks-actions, checks-azure |
Queued ff53b385efadfa63cfbf4e38c45243f95886d9cd with parent 40857b9, future comparison URL. |
Finished benchmarking try commit (ff53b385efadfa63cfbf4e38c45243f95886d9cd): 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 |
@bors r+ |
📌 Commit ef49032 has been approved by |
☀️ Test successful - checks-actions, checks-azure |
When we encode an ExpnId into the crate metadata, we write out the
CrateNum of the crate that 'owns' the corresponding
ExpnData
, whichis later used to decode the
ExpnData
from its owning crate.However, we current serialize the
ExpnData
for allExpnIds
that weserialize, even if the
ExpnData
was already serialized into a foreigncrate. This commit skips encoding this kind of
ExpnData
, which shouldhopefully speed up metadata encoding and reduce the total metadata size.