]> git.lizzy.rs Git - rust.git/commit
Remove bitslice.rs.
authorNicholas Nethercote <nnethercote@mozilla.com>
Thu, 13 Sep 2018 04:19:01 +0000 (14:19 +1000)
committerNicholas Nethercote <nnethercote@mozilla.com>
Thu, 13 Sep 2018 09:36:03 +0000 (19:36 +1000)
commitb697409f10e70558ef72d39eee4a5f7af60cf16b
tree320172bde65674b3cbe4f25cff748c923d5b4b7d
parent755fcae75e9634e6a11651f46d17d7b1310f821b
Remove bitslice.rs.

This requires the following changes.

- It moves parts of bitslice.rs into bitvec.rs: `bitwise()`,
  `BitwiseOperator`, `bits_to_string()`.

- It changes `IdxSet` to just be a wrapper around `BitArray`.

- It changes `BitArray` and `BitVec` to use `usize` words instead of
  `u128` words. (`BitSlice` and `IdxSet` already use `usize`.) Local
  profiling showed `usize` was better.

- It moves some operations from `IdxSet` into `BitArray`:
  `new_filled()`, `clear()`, `set_up_to()`, `trim_to()` (renamed
  `clear_above()`), `words()` and `words_mut()`, `encode()` and
  `decode(). The `IdxSet` operations now just call the `BitArray`
  operations.

- It replaces `BitArray`'s iterator implementation with `IdxSet`'s,
  because the latter is more concise. It also removes the buggy
  `size_hint` function from `BitArray`'s iterator, which counted the
  number of *words* rather than the number of *bits*. `IdxSet`'s
  iterator is now just a thin wrapper around `BitArray`'s iterator.

- It moves some unit tests from `indexed_set.rs` to `bitvec.rs`.
src/librustc_data_structures/bitslice.rs [deleted file]
src/librustc_data_structures/bitvec.rs
src/librustc_data_structures/indexed_set.rs
src/librustc_data_structures/lib.rs
src/librustc_mir/dataflow/graphviz.rs
src/librustc_mir/dataflow/impls/borrows.rs
src/librustc_mir/dataflow/impls/mod.rs
src/librustc_mir/dataflow/mod.rs