diff options
| author | bors <bors@rust-lang.org> | 2021-03-01 02:48:29 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-03-01 02:48:29 +0000 |
| commit | 3b150b7a8f77874f26c617666f5608fe4a3e58df (patch) | |
| tree | a474add65e5754854af90c050636b81777289dbe /compiler/rustc_llvm/llvm-wrapper/ArchiveWrapper.cpp | |
| parent | 43fc1b3e24087df507babc439db8d2c2508c698c (diff) | |
| parent | deebb63cc8f706b7e92d5e67073a6a94f9a05b2d (diff) | |
| download | rust-3b150b7a8f77874f26c617666f5608fe4a3e58df.tar.gz rust-3b150b7a8f77874f26c617666f5608fe4a3e58df.zip | |
Auto merge of #81094 - ssomers:btree_drainy_refactor_3, r=Mark-Simulacrum
BTreeMap: split up range_search into two stages `range_search` expects the caller to pass the same root twice and starts searching a node for both bounds of a range. It's not very clear that in the early iterations, it searches twice in the same node. This PR splits that search up in an initial `find_leaf_edges_spanning_range` that postpones aliasing until the last second, and a second phase for continuing the search for the range in the each subtree independently (`find_lower_bound_edge` & `find_upper_bound_edge`), which greatly helps for use in #81075. It also moves those functions over to the search module. r? `@Mark-Simulacrum`
Diffstat (limited to 'compiler/rustc_llvm/llvm-wrapper/ArchiveWrapper.cpp')
0 files changed, 0 insertions, 0 deletions
