diff options
| author | bors <bors@rust-lang.org> | 2021-06-16 15:18:19 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-06-16 15:18:19 +0000 |
| commit | 9fef8d91b4a6c5bfe07c025c434f2d623ad83337 (patch) | |
| tree | 68ebf8f862d1c29d2ad3cbc1cd6a0e92c722e38e /compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp | |
| parent | 8daad743c4bb941536860b4df20111cb71b8c777 (diff) | |
| parent | 53d71c181e53be51a1e122146c504e758f304c38 (diff) | |
| download | rust-9fef8d91b4a6c5bfe07c025c434f2d623ad83337.tar.gz rust-9fef8d91b4a6c5bfe07c025c434f2d623ad83337.zip | |
Auto merge of #86179 - the8472:revere-path-cmp, r=kennytm
optimize Eq implementation for paths Filesystems generally have a tree-ish structure which means paths are more likely to share a prefix than a suffix. Absolute paths are especially prone to share long prefixes. quick benchmark consisting of a search through through a vec containing the absolute paths of all (1850) files in `compiler/`: ``` # old test path::tests::bench_path_cmp ... bench: 227,407 ns/iter (+/- 2,162) # new test path::tests::bench_path_cmp ... bench: 64,976 ns/iter (+/- 1,142) ```
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/RustWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
