Commit Graph

183 Commits

Author SHA1 Message Date
Will Crichton 800d6531a9 Small fixes 2021-08-25 22:54:26 -07:00
Will Crichton 2110ac303e Add optimized sparse-hybrid / dense-hybrid intersect 2021-08-25 15:10:33 -07:00
Will Crichton 415d5e860f Remove BitRelations impls for SparseBitSet, add optimizations 2021-08-25 15:03:09 -07:00
Will Crichton 6cf3786ba4 Fix HybridBitSet port issue 2021-08-24 18:14:39 -07:00
Will Crichton 79e0a0faf9 Refactor BitSet relational methods into trait with parameterized
right-hand side
2021-08-24 17:50:08 -07:00
Will Crichton 0ca51b6b66 Make SparseBitMatrix::ensure_row public to enable general mutation of rows 2021-08-23 16:13:17 -07:00
Jade 3cf820e17d rfc3052: Remove authors field from Cargo manifests
Since RFC 3052 soft deprecated the authors field anyway, hiding it from
crates.io, docs.rs, and making Cargo not add it by default, and it is
not generally up to date/useful information, we should remove it from
crates in this repo.
2021-07-29 14:56:05 -07:00
bjorn3 312f964478 Remove unused feature gates 2021-05-31 13:55:43 +02:00
bjorn3 9de82d7611 Use allow_internal_unstable more in rustc_index 2021-05-31 12:13:47 +02:00
Jacob Pratt 35ce36812a
Unify feature flags as `step_trait`
While stdlib implementations of the unchecked methods require unchecked
math, there is no reason to gate it behind this for external users. The
reasoning for a separate `step_trait_ext` feature is unclear, and as
such has been merged as well.
2021-05-26 18:07:10 -04:00
Jacob Pratt bc2f0fb5a9
Specialize implementations
Implementations in stdlib are now optimized as they were before.
2021-05-26 18:07:09 -04:00
Jacob Pratt a875876027
Make Range implementation safe 2021-05-26 00:12:06 -04:00
Mark Rousskov 9d4c0944cb Change bitwise operator to more easily keep data in vector registers 2021-05-04 11:55:18 -04:00
Ralf Jung 3d16e156ae fix sanitizer tests 2021-04-25 11:08:33 +02:00
Ralf Jung 23d54ad96f move core::hint::black_box under its own feature gate 2021-04-25 11:08:12 +02:00
bors b56b175c6c Auto merge of #84310 - RalfJung:const-fn-feature-flags, r=oli-obk
further split up const_fn feature flag

This continues the work on splitting up `const_fn` into separate feature flags:
* `const_fn_trait_bound` for `const fn` with trait bounds
* `const_fn_unsize` for unsizing coercions in `const fn` (looks like only `dyn` unsizing is still guarded here)

I don't know if there are even any things left that `const_fn` guards... at least libcore and liballoc do not need it any more.

`@oli-obk` are you currently able to do reviews?
2021-04-24 23:16:03 +00:00
Jubilee Young e8eb691c1f Use arrayvec 0.7, drop smallvec 0.6
With the arrival of min const generics, many alt-vec libraries have
updated to use it in some way and arrayvec is no exception. Use the
latest with minor refactoring.

Also, rustc_workspace_hack is the only user of smallvec 0.6 in the
entire tree, so drop it.
2021-04-21 22:39:08 -07:00
Ralf Jung bd9556956a fix feature use in rustc libs 2021-04-18 22:05:45 +02:00
Wilco Kusee 3ea7c90a94 Add fixme comment to revert change once const_panic is stable 2021-04-03 13:07:03 +02:00
Wilco Kusee 3cfa0a0dff Remove nightly features in rustc_type_ir 2021-04-03 10:00:09 +02:00
Josh Stone 72ebebe474 Use iter::zip in compiler/ 2021-03-26 09:32:31 -07:00
Camille GILLOT 736fc96ff3 Remove useless Clone bound in IndexVec. 2021-03-09 18:51:36 +01:00
Tomasz Miąsko 481e1fd3a8 Miscellaneous inlining improvements
Inline a few small and hot functions.
2021-02-26 00:00:00 +00:00
bors 43e1ea29c4 Auto merge of #81498 - thomaseizinger:ice-workaround-56935-rustc-index, r=matthewjasper
Apply workaround from #72003 for #56935 to allow for cross-compilation of `rustc_index` crate

This patch applies the same workaround as #72003 to the `rustc_index` crate. This allows recent versions of rustfmt to compile to wasm again.

Related: #72017.
2021-02-07 08:09:58 +00:00
Mara Bos 21c276f9c8
Rollup merge of #81682 - JulianKnodt:bit_set_iter_benchmarks, r=oli-obk
Add additional bitset benchmarks

Add additional benchmarks for operations in bitset, I realize that it was a bit lacking when I intended to optimize it earlier, so I was hoping to put some in so I can verify my work later.
2021-02-05 12:26:03 +01:00
Bastian Kauschke 50e394a05e relax adt unsizing requirements 2021-02-04 00:00:28 +01:00
kadmin 6e6608d8b5 Add additional benchmarks to bit_set 2021-02-02 23:31:30 +00:00
Thomas Eizinger ff00ef4d66
Apply workaround from #72003 for #56935
Related: #72017.
2021-01-29 14:56:37 +11:00
Joshua Nelson 35f16c60e7 Switch compiler/ to intra-doc links
rustc_lint and rustc_lint_defs weren't switched because they're included
in the compiler book and so can't use intra-doc links.
2020-12-18 15:22:51 -05:00
varkor cf32afcf48 Stabilise `then` 2020-11-22 13:45:14 +00:00
Bastian Kauschke 1146c39da7 cache types during normalization 2020-09-19 17:27:13 +02:00
Dylan MacKenzie 149307efb7 Improve `BitSet` APIs
A few small cleanups to `BitSet` and friends:

- Overload `clone_from` for `BitSet`.
- Improve `Debug` represenation of `HybridBitSet`.
- Make `HybridBitSet::domain_size` public.
- Don't require `T: Idx` at the type level. The `Idx` bound is still on
  most `BitSet` methods, but like `HashMap`, it doesn't need to be
  satisfied for the type to exist.
2020-08-30 11:13:18 -07:00
mark 9e5f7d5631 mv compiler to compiler/ 2020-08-30 18:45:07 +03:00