rust/src/librustc_data_structures
bors bce32b532d Auto merge of #51987 - nikomatsakis:nll-region-infer-scc, r=pnkfelix
nll experiment: compute SCCs instead of iterative region solving

This is an attempt to speed up region solving by replacing the current iterative dataflow with a SCC computation. The idea is to detect cycles (SCCs) amongst region constraints and then compute just one value per cycle. The graph with all cycles removed is of course a DAG, so we can then solve constraints "bottom up" once the liveness values are known.

I kinda ran out of time this morning so the last commit is a bit sloppy but I wanted to get this posted, let travis run on it, and maybe do a perf run, before I clean it up.
2018-07-13 13:28:55 +00:00
..
graph nit: fix `all_sccs` comment 2018-07-13 01:29:10 -04:00
obligation_forest Improve `Node::{parent,dependents}` interplay. 2018-06-18 10:04:23 +10:00
owning_ref Enforce #![deny(bare_trait_objects)] in src/librustc_data_structures tests 2018-07-11 14:21:26 +02:00
snapshot_map Avoid repeated HashMap lookups in `opt_normalize_projection_type`. 2018-05-17 09:34:20 +10:00
Cargo.toml Update Rayon version 2018-06-06 15:25:16 +02:00
accumulate_vec.rs Move RangeArguments to {core::std}::ops and rename to RangeBounds 2018-03-29 13:12:49 +02:00
array_vec.rs stabilize RangeBounds collections_range #30877 2018-05-24 05:01:40 -07:00
base_n.rs Shorten names of some compiler generated artifacts. 2018-01-08 12:30:52 +01:00
bitslice.rs rustc_data_structures: add missing #[inline]. 2018-02-21 19:21:26 +02:00
bitvec.rs ignore the point where the outlives requirement was added 2018-05-09 23:21:24 -03:00
flock.rs Fix definitions of ULONG_PTR 2017-05-06 15:46:16 +01:00
fx.rs get `rustc_hash` from external crate 2018-05-24 12:01:27 -04:00
indexed_set.rs improve comments 2018-07-02 11:40:49 -04:00
indexed_vec.rs strengthen `Idx` to require `Ord + Hash` 2018-07-12 00:38:40 -04:00
lib.rs Auto merge of #51987 - nikomatsakis:nll-region-infer-scc, r=pnkfelix 2018-07-13 13:28:55 +00:00
sip128.rs rustc_data_structures: Add implementation of 128 bit SipHash. 2017-10-16 14:44:40 +02:00
small_vec.rs Fix typos & us spellings 2017-08-15 21:56:30 +02:00
sorted_map.rs Auto merge of #51033 - coryshrmn:master, r=dtolnay 2018-05-25 22:18:27 +00:00
stable_hasher.rs Move PROFQ_CHAN to a Session field 2018-03-09 08:04:31 +01:00
sync.rs add a missing `dyn` 2018-07-11 16:08:38 +02:00
tiny_list.rs Make const decoding from the incremental cache thread-safe. 2018-06-01 09:32:24 +02:00
transitive_relation.rs Make TransitiveRelation thread safe. Avoid locking by using get_mut in some cases. 2018-02-27 19:07:33 +01:00
tuple_slice.rs Add additional test cases to test all arities of tuple; And remove type suffix - i32 on integers 2016-06-11 22:31:24 +05:30
work_queue.rs create a new `WorkQueue` data structure 2018-07-01 05:22:50 -04:00