Closed
Description
The CStore
maintains a cache of decoded item attributes which:
- is an instance of shared mutable state that we'd like to avoid and
- is largely unused at this point because item attributes are also cached via the
item_attrs
query.
The remaining instances where the CrateMetadata::get_item_attrs()
is called directly should not be performance critical. To solve this issue:
- Remove the
attribute_cache
field fromCrateMetadata
and make things compile again - Open a PR so that we can due a performance test in order to verify that this indeed does not regress compile times.
cc @rust-lang/wg-compiler-performance
Activity
whitfin commentedon May 8, 2018
Hi @michaelwoerister! I took a shot at this here. From my testing everything appears to work that I can see. If you have any advice I'd appreciate it :)
Auto merge of #50528 - whitfin:issue-50508, r=<try>
Auto merge of #50528 - whitfin:issue-50508, r=<try>
Auto merge of #50528 - whitfin:issue-50508, r=michaelwoerister