Zalathar
5afd12239a
Remove leading underscores from parameter names in Sharded
...
With the removal of `cfg(parallel_compiler)`, these parameters are never
considered unused.
2025-03-03 18:07:54 +11:00
Michał Kostrubiec
7d2cfcab9d
Changed interners to start with preallocated capacity
2025-02-25 01:17:01 +01:00
Noratrieb
505b8e1332
Delete the cfg(not(parallel))
serial compiler
...
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!
2024-11-12 13:38:58 +00:00
Michael Goulet
c682aa162b
Reformat using the new identifier sorting from rustfmt
2024-09-22 19:11:29 -04:00
Nicholas Nethercote
84ac80f192
Reformat use
declarations.
...
The previous commit updated `rustfmt.toml` appropriately. This commit is
the outcome of running `x fmt --all` with the new formatting options.
2024-07-29 08:26:52 +10:00
Josh Stone
8f3af4c6e2
rustc_data_structures: use either instead of itertools
2024-01-24 15:36:57 -08:00
Nilstrieb
21a870515b
Fix clippy::needless_borrow
in the compiler
...
`x clippy compiler -Aclippy::all -Wclippy::needless_borrow --fix`.
Then I had to remove a few unnecessary parens and muts that were exposed
now.
2023-11-21 20:13:40 +01:00
cui fliter
a44a4edc0e
Fix some typos
...
Signed-off-by: cui fliter <imcusg@gmail.com>
2023-11-14 23:06:50 +08:00
John Kåre Alsaker
9690142bef
Remove the LockMode
enum and dispatch
2023-09-08 10:15:12 +02:00
John Kåre Alsaker
61cc00d238
Refactor Lock
implementation
2023-09-08 08:48:44 +02:00
John Kåre Alsaker
8fc160b742
Add optimized lock methods for Sharded
2023-09-08 08:48:44 +02:00
John Kåre Alsaker
f458b112f8
Optimize lock_shards
2023-08-24 23:29:48 +02:00
John Kåre Alsaker
0823f0c32b
Remove count
2023-08-16 10:44:32 +02:00
John Kåre Alsaker
81220c0ace
Keep SHARDS fixed instead of a function of cfg!(parallel_compiler)
2023-08-16 10:00:25 +02:00
John Kåre Alsaker
c737c62e70
Make Sharded an enum and specialize it for the single thread case
2023-08-15 17:22:48 +02:00
John Kåre Alsaker
8abafd085a
Add some comments
2023-05-28 15:54:52 +02:00
John Kåre Alsaker
5843858c01
Don't access self.mask with a single shard
2023-05-28 15:47:44 +02:00
John Kåre Alsaker
6620882089
Use only one shard with a single thread
2023-05-28 14:08:59 +02:00
John Kåre Alsaker
64474a40b0
Move the WorkerLocal type from the rustc-rayon fork into rustc_data_structures
2023-04-16 05:50:57 +02:00
Nilstrieb
0a0968b207
Allow modulo_one
on function using cfg consts
2023-04-09 22:30:24 +02:00
Nicholas Nethercote
44bfb6538e
CacheAligned
and Sharded
don't need to derive Clone
.
2023-03-30 21:14:43 +11:00
Mark Rousskov
9deed6f74e
Move Sharded maps into each QueryCache impl
2022-02-20 12:10:46 -05:00
bjorn3
7b50fd5450
Use <[T; N]>::map in Sharded instead of SmallVec and unsafe code
...
This results in a lot less assembly
2021-09-18 15:07:24 +02:00
Camille GILLOT
15b0bc6b83
Separate the query cache from the query state.
2021-02-13 21:14:58 +01:00
mark
9e5f7d5631
mv compiler to compiler/
2020-08-30 18:45:07 +03:00