diff options
| author | Nicholas Nethercote <nnethercote@mozilla.com> | 2018-07-18 15:03:43 +1000 |
|---|---|---|
| committer | Nicholas Nethercote <nnethercote@mozilla.com> | 2018-07-20 15:15:06 +1000 |
| commit | 798209e78b90b83a3742f713b70473b6ab799aca (patch) | |
| tree | 5eb9ba867cbd0c8721321f0ac3a2d45c86085ff4 /src/test/debuginfo/enum-thinlto.rs | |
| parent | 4f3c7a472b77ba3f3afbc12d004b9d1bbcee7fe7 (diff) | |
| download | rust-798209e78b90b83a3742f713b70473b6ab799aca.tar.gz rust-798209e78b90b83a3742f713b70473b6ab799aca.zip | |
Speed up `SparseBitMatrix`.
Using a `BTreeMap` to represent rows in the bit matrix is really slow. This patch changes things so that each row is represented by a `BitVector`. This is a less sparse representation, but a much faster one. As a result, `SparseBitSet` and `SparseChunk` can be removed. Other minor changes in this patch. - It renames `BitVector::insert()` as `merge()`, which matches the terminology in the other classes in bitvec.rs. - It removes `SparseBitMatrix::is_subset()`, which is unused. - It reinstates `RegionValueElements::num_elements()`, which #52190 had removed. - It removes a low-value `debug!` call in `SparseBitMatrix::add()`.
Diffstat (limited to 'src/test/debuginfo/enum-thinlto.rs')
0 files changed, 0 insertions, 0 deletions
