<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_codegen_llvm/src/llvm, branch beta</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=beta</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=beta'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-09-06T18:37:23+00:00</updated>
<entry>
<title>Remove want_summary argument from prepare_thin</title>
<updated>2025-09-06T18:37:23+00:00</updated>
<author>
<name>bjorn3</name>
<email>17426603+bjorn3@users.noreply.github.com</email>
</author>
<published>2025-09-04T15:16:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f2933b34a8331204270fa2bdbdcfd79fcffbb302'/>
<id>urn:sha1:f2933b34a8331204270fa2bdbdcfd79fcffbb302</id>
<content type='text'>
It is always false nowadays. ThinLTO summary writing is instead done by
llvm_optimize.
</content>
</entry>
<entry>
<title>Update to ar_archive_writer 0.5.1</title>
<updated>2025-08-29T23:37:42+00:00</updated>
<author>
<name>Daniel Paoliello</name>
<email>danpao@microsoft.com</email>
</author>
<published>2025-08-21T18:40:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=da8f230d5f87a9a6113ed7774eec7f20268cf240'/>
<id>urn:sha1:da8f230d5f87a9a6113ed7774eec7f20268cf240</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Auto merge of #145877 - nikic:capture-address, r=tmiasko</title>
<updated>2025-08-28T00:01:22+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2025-08-28T00:01:22+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d36f964125163c2e698de5559efefb8217b8b7f0'/>
<id>urn:sha1:d36f964125163c2e698de5559efefb8217b8b7f0</id>
<content type='text'>
Use captures(address) instead of captures(none) for indirect args

While provenance cannot be captured through these arguments, the address / object identity can.

Fixes https://github.com/rust-lang/rust/issues/137668.

r? `@ghost`
</content>
</entry>
<entry>
<title>Use captures(address) instead of captures(none) for indirect args</title>
<updated>2025-08-26T14:16:23+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>npopov@redhat.com</email>
</author>
<published>2025-08-26T09:13:03+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c3ab409b4fa3b1fb18f34877d9811bb502ed507f'/>
<id>urn:sha1:c3ab409b4fa3b1fb18f34877d9811bb502ed507f</id>
<content type='text'>
While provenance cannot be captured through these arguments, the
address / object identity can.
</content>
</entry>
<entry>
<title>Assert that LLVM range-attribute values don't exceed 128 bits</title>
<updated>2025-08-26T03:07:19+00:00</updated>
<author>
<name>Zalathar</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-08-26T02:31:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=fcff8f7f5a0d4add3c05f57de1b34291746c3c08'/>
<id>urn:sha1:fcff8f7f5a0d4add3c05f57de1b34291746c3c08</id>
<content type='text'>
The underlying implementation of `LLVMCreateConstantRangeAttribute` assumes
that each of `LowerWords` and `UpperWords` points to enough u64 values to
define an integer of the specified bit-length, and will encounter UB if that is
not the case.

Our safe wrapper function always passes pointers to `[u64; 2]` arrays,
regardless of the bit-length specified. That's fine in practice, because scalar
primitives never exceed 128 bits, but it is technically a soundness hole in a
safe function.

We can close the soundness hole by explicitly asserting `size_bits &lt;= 128`.
This is effectively just a stricter version of the existing check that the
value must be small enough to fit in `c_uint`.
</content>
</entry>
<entry>
<title>Rename `llvm::Bool` aliases to standard const case</title>
<updated>2025-08-24T13:09:54+00:00</updated>
<author>
<name>Zalathar</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-08-24T10:49:32+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=b4e97e5d866dd43c110d337affc419d5ac482765'/>
<id>urn:sha1:b4e97e5d866dd43c110d337affc419d5ac482765</id>
<content type='text'>
This avoids the need for `#![allow(non_upper_case_globals)]`.
</content>
</entry>
<entry>
<title>Replace the `llvm::Bool` typedef with a proper newtype</title>
<updated>2025-08-24T13:09:54+00:00</updated>
<author>
<name>Zalathar</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-08-24T05:05:26+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=455a67bd4f38b10e613fc6e2103598db10ad57fe'/>
<id>urn:sha1:455a67bd4f38b10e613fc6e2103598db10ad57fe</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Tell LLVM about read-only captures</title>
<updated>2025-08-20T17:08:16+00:00</updated>
<author>
<name>Nikita Popov</name>
<email>npopov@redhat.com</email>
</author>
<published>2025-08-11T15:18:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=d71ed8d19bcfdbd6eb3bf2620071f2ab95470a57'/>
<id>urn:sha1:d71ed8d19bcfdbd6eb3bf2620071f2ab95470a57</id>
<content type='text'>
`&amp;Freeze` parameters are not only `readonly` within the function,
but any captures of the pointer can also only be used for reads.
This can now be encoded using the `captures(address, read_provenance)`
attribute.
</content>
</entry>
<entry>
<title>Rollup merge of #145484 - Zalathar:archive-builder, r=bjorn3</title>
<updated>2025-08-19T04:18:25+00:00</updated>
<author>
<name>Stuart Cook</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-08-19T04:18:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8748d8e7d5b63932e3062361f736ff436c86be1f'/>
<id>urn:sha1:8748d8e7d5b63932e3062361f736ff436c86be1f</id>
<content type='text'>
Remove `LlvmArchiveBuilder` and supporting code/bindings

Switching over to the newer Rust-based `ArArchiveBuilder` happened in rust-lang/rust#128936, a year ago.

Per the comment in `new_archive_builder`, that seems like enough time to justify removing the older, unused `LlvmArchiveBuilder` implementation and its associated bindings.

Fixes rust-lang/rust#128955.
</content>
</entry>
<entry>
<title>Rollup merge of #145432 - Zalathar:target-machine, r=wesleywiser</title>
<updated>2025-08-19T04:18:25+00:00</updated>
<author>
<name>Stuart Cook</name>
<email>Zalathar@users.noreply.github.com</email>
</author>
<published>2025-08-19T04:18:25+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8945924d77065c96d35f81bc19a0b9040664bb57'/>
<id>urn:sha1:8945924d77065c96d35f81bc19a0b9040664bb57</id>
<content type='text'>
cg_llvm: Small cleanups to `owned_target_machine`

This PR contains a few tiny cleanups to the `owned_target_machine` code.

Each individual commit should be fairly straightforward.
</content>
</entry>
</feed>
