lcnr
ea624699e3
implement lint for suspicious auto trait impls
2022-02-01 09:55:19 +01:00
pierwill
a4a8c241c7
Require Ord for rustc_index::SparseBitSet::last_set_in
2021-12-22 10:50:57 -06:00
pierwill
8df9248591
Remove PartialOrd
and Ord
from LocalDefId
...
Implement `Ord`, `PartialOrd` for SpanData
2021-12-22 10:50:57 -06:00
Tomasz Miąsko
d496cca3b1
Derive hash for BitSet and BitMatrix
2021-12-18 08:56:38 +01:00
Mark Rousskov
03afb61b53
Optimize live point computation
...
This is just replicating the previous algorithm, but taking advantage of the
bitset structures to optimize into tighter and better optimized loops.
Particularly advantageous on enormous MIR blocks, which are relatively rare in
practice.
2021-11-03 11:24:59 -04:00
Matthias Krüger
4457014398
Revert "Auto merge of #89709 - clemenswasser:apply_clippy_suggestions_2, r=petrochenkov"
...
The PR had some unforseen perf regressions that are not as easy to find.
Revert the PR for now.
This reverts commit 6ae8912a3e
, reversing
changes made to 86d6d2b738
.
2021-10-15 11:28:23 +02:00
LingMan
7943c9c446
Use Option::map_or instead of open coding it
2021-10-12 14:47:52 +02:00
Clemens Wasser
14b6cf6fd7
Remove unnecessary variable
2021-10-11 08:11:30 +02:00
Clemens Wasser
71dd0b928b
Apply clippy suggestions
2021-10-10 15:38:19 +02:00
Vadim Petrochenkov
fbe5e5c0ee
rustc_index: Add some map-like APIs to IndexVec
2021-09-22 03:11:29 +03:00
Will Crichton
e340a0e249
Suggested changes
2021-08-27 16:21:25 -07:00
Will Crichton
86bd551e4c
Addd missing domain size assertions
2021-08-27 11:17:27 -07:00
Will Crichton
2166c6db43
Add comments and unit tests for new SparseBitMatrix methods
2021-08-26 12:46:59 -07:00
Will Crichton
acba31c333
Typo
2021-08-26 12:14:37 -07:00
Will Crichton
953d685ea1
Add remaining impl for hybrid X dense
2021-08-26 12:12:29 -07:00
Will Crichton
8767b00d67
Formatting
2021-08-26 11:46:00 -07:00
Will Crichton
ce37f0a355
Add comments
2021-08-26 11:45:25 -07:00
Will Crichton
d73a169f93
Fix sparse intersect bug, add more sparse / dense tests
2021-08-26 11:39:13 -07:00
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
Mark Rousskov
9d4c0944cb
Change bitwise operator to more easily keep data in vector registers
2021-05-04 11:55:18 -04: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
Josh Stone
72ebebe474
Use iter::zip in compiler/
2021-03-26 09:32:31 -07:00
Bastian Kauschke
50e394a05e
relax adt unsizing requirements
2021-02-04 00:00:28 +01: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
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