<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_data_structures/src, branch 1.77.2</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.77.2</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.77.2'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2024-02-15T18:54:29+00:00</updated>
<entry>
<title>Update jobserver-rs to 0.1.28</title>
<updated>2024-02-15T18:54:29+00:00</updated>
<author>
<name>Vadim Petrochenkov</name>
<email>vadim.petrochenkov@gmail.com</email>
</author>
<published>2024-02-09T16:11:37+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=131e1fc968dfff4f8d2a986b4200089a92d48dc4'/>
<id>urn:sha1:131e1fc968dfff4f8d2a986b4200089a92d48dc4</id>
<content type='text'>
(cherry picked from commit 83f3bc42714250633cacadcde8b15da28bf443f0)
</content>
</entry>
<entry>
<title>Remove unused features</title>
<updated>2024-01-25T14:01:33+00:00</updated>
<author>
<name>clubby789</name>
<email>jamie@hill-daniel.co.uk</email>
</author>
<published>2024-01-14T20:08:47+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fd29f74ff8d787f707a40bc5dbcd8f7827100f5e'/>
<id>urn:sha1:fd29f74ff8d787f707a40bc5dbcd8f7827100f5e</id>
<content type='text'>
</content>
</entry>
<entry>
<title>rustc_data_structures: use either instead of itertools</title>
<updated>2024-01-24T23:36:57+00:00</updated>
<author>
<name>Josh Stone</name>
<email>jistone@redhat.com</email>
</author>
<published>2024-01-24T23:36:57+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8f3af4c6e21feb3cada901ea6f41f198b0f0e74a'/>
<id>urn:sha1:8f3af4c6e21feb3cada901ea6f41f198b0f0e74a</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #120080 - cuviper:128-align-packed, r=nikic</title>
<updated>2024-01-22T13:08:19+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2024-01-22T13:08:19+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=30662530506ed29ea29191798cb2ab8aa1249023'/>
<id>urn:sha1:30662530506ed29ea29191798cb2ab8aa1249023</id>
<content type='text'>
Pack u128 in the compiler to mitigate new alignment

This is based on #116672, adding a new `#[repr(packed(8))]` wrapper on `u128` to avoid changing any of the compiler's size assertions. This is needed in two places:

* `SwitchTargets`, otherwise its `SmallVec&lt;[u128; 1]&gt;` gets padded up to 32 bytes.
* `LitKind::Int`, so that entire `enum` can stay 24 bytes.
  * This change definitely has far-reaching effects though, since it's public.
</content>
</entry>
<entry>
<title>Auto merge of #116185 - Zoxc:rem-one-thread, r=cjgillot</title>
<updated>2024-01-20T13:18:33+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2024-01-20T13:18:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6745c6000aa037c14bf4359c5cb56d4c657bfe3c'/>
<id>urn:sha1:6745c6000aa037c14bf4359c5cb56d4c657bfe3c</id>
<content type='text'>
Remove `OneThread`

This removes `OneThread` by switching `incr_comp_session` over to `RwLock`.
</content>
</entry>
<entry>
<title>Add Pu128 = #[repr(packed(8))] u128</title>
<updated>2024-01-20T04:10:38+00:00</updated>
<author>
<name>Josh Stone</name>
<email>jistone@redhat.com</email>
</author>
<published>2024-01-17T23:39:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=cb7d863e742ae3782174db2acf57310cd1b27561'/>
<id>urn:sha1:cb7d863e742ae3782174db2acf57310cd1b27561</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #120076 - Mark-Simulacrum:unhash, r=cjgillot</title>
<updated>2024-01-19T04:43:17+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2024-01-19T04:43:17+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1bd42be8cb707aadaf2068d5ac186154970c4d80'/>
<id>urn:sha1:1bd42be8cb707aadaf2068d5ac186154970c4d80</id>
<content type='text'>
Use UnhashMap for a few more maps

This avoids a few cases of hashing data that's already hashed.

cc https://github.com/rust-lang/rust/issues/56308
</content>
</entry>
<entry>
<title>Auto merge of #114231 - ttsugriy:binary_search_slice, r=cjgillot</title>
<updated>2024-01-18T18:54:54+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2024-01-18T18:54:54+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=25f8d01fd8bda339612d0c0a8844173a09205f7c'/>
<id>urn:sha1:25f8d01fd8bda339612d0c0a8844173a09205f7c</id>
<content type='text'>
[rustc_data_structures] Use partition_point to find  slice range end.

This PR uses approach introduced in https://github.com/rust-lang/rust/pull/114152 to find
the end of the range. It's much easier to understand and reason about invariants of such
implementation.
Technically it's possible to make it even shorter by returning `&amp;[start..end]` unconditionally
because even if searched item is not present in the slice, `start` and `end` would point at
the same index, so the range would be empty. The reason I decided not to use this shorter
implementation is because it would involve more comparisons in case there are no elements
in the slice with key equal to `key`.

Also, not that it matters much, but this implementation also improves perf according to the
benchmark below:
https://gist.github.com/ttsugriy/63c0ed39ae132b131931fa1f8a3dea55

The results on my M1 macbook air are:
```
Running benches/bin_search_slice_benchmark.rs (target/release/deps/bin_search_slice_benchmark-90fa6d68c3bd1298)
Benchmarking multiply add/binary_search_slice: Collecting 100 samples in estimated 5.0002 s (1
multiply add/binary_search_slice
                        time:   [44.719 ns 44.918 ns 45.158 ns]
                        No change in performance detected.
Found 3 outliers among 100 measurements (3.00%)
  1 (1.00%) high mild
  2 (2.00%) high severe
Benchmarking multiply add/binary_search_slice_new: Collecting 100 samples in estimated 5.0001
multiply add/binary_search_slice_new
                        time:   [36.955 ns 37.060 ns 37.221 ns]
                        No change in performance detected.
Found 7 outliers among 100 measurements (7.00%)
  3 (3.00%) high mild
  4 (4.00%) high severe
```
</content>
</entry>
<entry>
<title>Remove `OneThread`</title>
<updated>2024-01-18T02:30:05+00:00</updated>
<author>
<name>John Kåre Alsaker</name>
<email>john.kare.alsaker@gmail.com</email>
</author>
<published>2023-09-26T20:34:09+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=63446d00ee2005125b1e4a7c3f00547101065709'/>
<id>urn:sha1:63446d00ee2005125b1e4a7c3f00547101065709</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Use UnhashMap for a few more maps</title>
<updated>2024-01-17T22:09:55+00:00</updated>
<author>
<name>Mark Rousskov</name>
<email>mark.simulacrum@gmail.com</email>
</author>
<published>2024-01-17T22:09:04+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=510fcd318b61d0e45165cdb0de880ee2f4f9cde2'/>
<id>urn:sha1:510fcd318b61d0e45165cdb0de880ee2f4f9cde2</id>
<content type='text'>
This avoids hashing data that's already hashed.
</content>
</entry>
</feed>
