rust/compiler/rustc_metadata/src
bors 005fc0f00f Auto merge of #106977 - michaelwoerister:unord_id_collections, r=oli-obk
Use UnordMap and UnordSet for id collections (DefIdMap, LocalDefIdMap, etc)

This PR changes the `rustc_data_structures::define_id_collections!` macro to use `UnordMap` and `UnordSet` instead of `FxHashMap` and `FxHashSet`. This should account for a large portion of hash-maps being used in places where they can cause trouble.

The changes required are moderate but non-zero:
- In some places the collections are extracted into sorted vecs.
- There are a few instances where for-loops have been changed to extends.

~~Let's see what the performance impact is. With a bit more refactoring, we might be able to get rid of some of the additional sorting -- but the change set is already big enough. Unless there's a performance impact, I'd like to do further changes in subsequent PRs.~~

Performance does not seem to be negatively affected ([perf-run here](https://github.com/rust-lang/rust/pull/106977#issuecomment-1396776699)).

Part of [MCP 533](https://github.com/rust-lang/compiler-team/issues/533).

r? `@ghost`
2023-01-21 14:18:17 +00:00
..
rmeta Auto merge of #106977 - michaelwoerister:unord_id_collections, r=oli-obk 2023-01-21 14:18:17 +00:00
creader.rs Fix uninlined_format_args for some compiler crates 2023-01-05 19:01:12 +01:00
dependency_format.rs Add help for the error message when missing rustc_driver 2022-12-31 17:20:13 +00:00
errors.rs Auto merge of #105609 - bjorn3:shrink_rustc_dev, r=jyn514 2023-01-03 08:05:54 +00:00
foreign_modules.rs Rename some OwnerId fields. 2022-10-29 20:28:38 +11:00
fs.rs Remove double spaces after dots in comments 2023-01-17 08:09:33 +00:00
lib.rs Wrap bundlen static libraries into object files 2022-11-14 12:01:49 +03:00
locator.rs Remove double spaces after dots in comments 2023-01-17 08:09:33 +00:00
native_libs.rs Remove double spaces after dots in comments 2023-01-17 08:09:33 +00:00