about summary refs log tree commit diff
path: root/compiler/rustc_data_structures/src/sync/vec.rs
AgeCommit message (Collapse)AuthorLines
2025-02-22Greatly simplify lifetime captures in edition 2024Michael Goulet-2/+2
2024-11-12Delete the `cfg(not(parallel))` serial compilerNoratrieb-19/+2
Since it's inception a long time ago, the parallel compiler and its cfgs have been a maintenance burden. This was a necessary evil the allow iteration while not degrading performance because of synchronization overhead. But this time is over. Thanks to the amazing work by the parallel working group (and the dyn sync crimes), the parallel compiler has now been fast enough to be shipped by default in nightly for quite a while now. Stable and beta have still been on the serial compiler, because they can't use `-Zthreads` anyways. But this is quite suboptimal: - the maintenance burden still sucks - we're not testing the serial compiler in nightly Because of these reasons, it's time to end it. The serial compiler has served us well in the years since it was split from the parallel one, but it's over now. Let the knight slay one head of the two-headed dragon!
2023-08-01Always use parking_lot's RwLock, even without parallel compilerOli Scherer-21/+7
2023-04-24Split `{Idx, IndexVec, IndexSlice}` into their own modulesMaybe Waffle-1/+1
2023-04-09Fix some clippy::complexityNilstrieb-1/+1
2023-04-04Another AppendOnlyVecOli Scherer-10/+21
2023-04-04Replace another lock with an append-only vecOli Scherer-0/+16
2023-04-04Remove a lock in favor of an AppendOnlyVecOli Scherer-2/+7
2023-04-04Add a usize-indexed append-only-vecOli Scherer-2/+34
2023-02-21Use a lock-free datastructure for `source_span`Oli Scherer-0/+41