-
-
Notifications
You must be signed in to change notification settings - Fork 14.4k
refactor rustc-hash integration #150353
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
refactor rustc-hash integration #150353
Conversation
|
Some changes occurred in exhaustiveness checking cc @Nadrieril These commits modify the If this was unintentional then you should revert the changes before this PR is merged. |
This comment has been minimized.
This comment has been minimized.
cc1e3be to
20c25b8
Compare
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
20c25b8 to
7939ffb
Compare
|
Ok, I removed the |
This comment has been minimized.
This comment has been minimized.
7939ffb to
9f5645d
Compare
This comment has been minimized.
This comment has been minimized.
9f5645d to
1229efb
Compare
This comment has been minimized.
This comment has been minimized.
1229efb to
6976fbc
Compare
|
Ok, this compiles now and passes all tests. |
This comment has been minimized.
This comment has been minimized.
6976fbc to
8c69712
Compare
|
This PR was rebased onto a different main commit. Here's a range-diff highlighting what actually changed. Rebasing is a normal part of keeping PRs up to date, so no action is needed—this note is just to help reviewers. |
|
ping @eholk I assume you're busy, but this should be really quick to review. |
|
Sorry about the delay! Looks good to me. @bors r+ |
refactor rustc-hash integration I found that rustc-hash is used in multiple compiler crates. Also some types use `FxBuildHasher` whereas others use `BuildHasherDefault<FxHasher>` (both do the same thing). In order to simplify future hashing experiments, I changed every location to use `rustc_data_structures::fx::*` types instead, and also removed the `BuildHasherDefault` variant. This will simplify future experiments with hashing (for example trying out a hasher that doesn't implement `Default` for whatever reason).
This comment has been minimized.
This comment has been minimized.
What is this?This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.Comparing 873d468 (parent) -> fb292b7 (this PR) Test differencesShow 2 test diffs2 doctest diffs were found. These are ignored, as they are noisy. Test dashboardRun cargo run --manifest-path src/ci/citool/Cargo.toml -- \
test-dashboard fb292b75fb6c410344f7216ec51b2eaa7cc2bb0c --output-dir test-dashboardAnd then open Job duration changes
How to interpret the job duration changes?Job durations can vary a lot, based on the actual runner instance |
|
Finished benchmarking commit (fb292b7): comparison URL. Overall result: ❌ regressions - no action needed@rustbot label: -perf-regression Instruction countOur most reliable metric. Used to determine the overall result above. However, even this metric can be noisy.
Max RSS (memory usage)Results (primary -3.6%, secondary -6.3%)A less reliable metric. May be of interest, but not used to determine the overall result above.
CyclesResults (secondary -2.0%)A less reliable metric. May be of interest, but not used to determine the overall result above.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 474.052s -> 475.284s (0.26%) |
I found that rustc-hash is used in multiple compiler crates. Also some types use
FxBuildHasherwhereas others useBuildHasherDefault<FxHasher>(both do the same thing).In order to simplify future hashing experiments, I changed every location to use
rustc_data_structures::fx::*types instead, and also removed theBuildHasherDefaultvariant. This will simplify future experiments with hashing (for example trying out a hasher that doesn't implementDefaultfor whatever reason).