<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_codegen_ssa/src/errors.rs, branch 1.85.0</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=1.85.0</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=1.85.0'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2024-12-15T01:38:46+00:00</updated>
<entry>
<title>don't show the full linker args unless `--verbose` is passed</title>
<updated>2024-12-15T01:38:46+00:00</updated>
<author>
<name>jyn</name>
<email>github@jyn.dev</email>
</author>
<published>2023-12-25T00:49:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a4ef751e26a90dd3b6b35fdbfef1e4854f9d80e1'/>
<id>urn:sha1:a4ef751e26a90dd3b6b35fdbfef1e4854f9d80e1</id>
<content type='text'>
the linker arguments can be *very* long, especially for crates with many dependencies. some parts of them are not very useful. unless specifically requested:
- omit object files specific to the current invocation
- fold rlib files into a single braced argument (in shell expansion format)

this shortens the output significantly without removing too much information.
</content>
</entry>
<entry>
<title>fix: rust-lang/rust#47446</title>
<updated>2024-11-15T14:25:19+00:00</updated>
<author>
<name>Sven Kanoldt</name>
<email>sven+oss@d34dl0ck.me</email>
</author>
<published>2024-10-09T12:24:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1696f534abe0655ee43ed57972a62d1cce42c233'/>
<id>urn:sha1:1696f534abe0655ee43ed57972a62d1cce42c233</id>
<content type='text'>
- Add test for issue 47446
- Implement the new lint lint_builtin_mixed_export_name_and_no_mangle
- Add suggestion how to fix it
</content>
</entry>
<entry>
<title>Rollup merge of #131405 - davidtwco:hardcoded-strip-macos, r=jieyouxu,albertlarsan68</title>
<updated>2024-11-05T22:43:56+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2024-11-05T22:43:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=8dee3e978a712bf6ed377473352edfc13f5e235c'/>
<id>urn:sha1:8dee3e978a712bf6ed377473352edfc13f5e235c</id>
<content type='text'>
bootstrap/codegen_ssa: ship llvm-strip and use it for -Cstrip

Fixes #131206.

- Includes `llvm-strip` (a symlink to `llvm-objcopy`) in the compiler dist artifact so that it can be used for `-Cstrip` instead of the system tooling.
- Uses `llvm-strip` instead of `/usr/bin/strip` for macOS. macOS needs a specific linker and the system one is preferred, hence #130781 but that doesn't work when cross-compiling, so use the `llvm-strip` utility instead.

cc #123151
</content>
</entry>
<entry>
<title>Auto merge of #129884 - RalfJung:forbidden-target-features, r=workingjubilee</title>
<updated>2024-11-05T16:25:45+00:00</updated>
<author>
<name>bors</name>
<email>bors@rust-lang.org</email>
</author>
<published>2024-11-05T16:25:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=e8c698bb3bdc121ac7f65919bd16d22f6567a3f1'/>
<id>urn:sha1:e8c698bb3bdc121ac7f65919bd16d22f6567a3f1</id>
<content type='text'>
mark some target features as 'forbidden' so they cannot be (un)set with -Ctarget-feature

The context for this is https://github.com/rust-lang/rust/issues/116344: some target features change the way floats are passed between functions. Changing those target features is unsound as code compiled for the same target may now use different ABIs.

So this introduces a new concept of "forbidden" target features (on top of the existing "stable " and "unstable" categories), and makes it a hard error to (un)set such a target feature. For now, the x86 and ARM feature `soft-float` is on that list. We'll have to make some effort to collect more relevant features, and similar features from other targets, but that can happen after the basic infrastructure for this landed. (These features are being collected in https://github.com/rust-lang/rust/issues/131799.)

I've made this a warning for now to give people some time to speak up if this would break something.

MCP: https://github.com/rust-lang/compiler-team/issues/780
</content>
</entry>
<entry>
<title>codegen_ssa: use `llvm-objcopy` for macOS strip</title>
<updated>2024-11-05T11:49:37+00:00</updated>
<author>
<name>David Wood</name>
<email>david.wood2@arm.com</email>
</author>
<published>2024-10-08T14:20:02+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f745467cd99cdcb62151c3b0c90f5467e7adfe69'/>
<id>urn:sha1:f745467cd99cdcb62151c3b0c90f5467e7adfe69</id>
<content type='text'>
</content>
</entry>
<entry>
<title>mark some target features as 'forbidden' so they cannot be (un)set</title>
<updated>2024-11-04T21:56:47+00:00</updated>
<author>
<name>Ralf Jung</name>
<email>post@ralfj.de</email>
</author>
<published>2024-09-02T09:45:59+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=ffad9aac27ff8a78f5d751bf88250470e2e9d790'/>
<id>urn:sha1:ffad9aac27ff8a78f5d751bf88250470e2e9d790</id>
<content type='text'>
For now, this is just a warning, but should become a hard error in the future
</content>
</entry>
<entry>
<title>Emit diagnostics for incorrect deployment targets</title>
<updated>2024-11-01T16:07:19+00:00</updated>
<author>
<name>Mads Marquart</name>
<email>mads@marquart.dk</email>
</author>
<published>2024-09-29T20:14:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=1ef1af1c607fe268b5622041ff586ca603b8ec8d'/>
<id>urn:sha1:1ef1af1c607fe268b5622041ff586ca603b8ec8d</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Rollup merge of #130308 - davidtwco:tied-target-consolidation, r=wesleywiser</title>
<updated>2024-10-10T20:00:45+00:00</updated>
<author>
<name>Matthias Krüger</name>
<email>matthias.krueger@famsik.de</email>
</author>
<published>2024-10-10T20:00:45+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=13976f1f25ac64d53a2e1317153f4cfb1324b351'/>
<id>urn:sha1:13976f1f25ac64d53a2e1317153f4cfb1324b351</id>
<content type='text'>
codegen_ssa: consolidate tied target checks

Fixes #105110.
Fixes #105111.

`rustc_codegen_llvm` and `rustc_codegen_gcc` duplicated logic for checking if tied target features were partially enabled. This PR consolidates these checks into `rustc_codegen_ssa` in the `codegen_fn_attrs` query, which also is run pre-monomorphisation for each function, which ensures that this check is run for unused functions, as would be expected.

Also adds a test confirming that enabling one tied feature doesn't imply another - the appropriate error for this was already being emitted. I did a bisect and narrowed it down to two patches it was likely to be - something in #128796, probably #128221 or #128679.
</content>
</entry>
<entry>
<title>Use wide pointers consistenly across the compiler</title>
<updated>2024-10-04T12:06:48+00:00</updated>
<author>
<name>Urgau</name>
<email>urgau@numericable.fr</email>
</author>
<published>2024-10-03T13:05:23+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=018ba0528fa5d22712397e520351295f8582a525'/>
<id>urn:sha1:018ba0528fa5d22712397e520351295f8582a525</id>
<content type='text'>
</content>
</entry>
<entry>
<title>codegen_ssa: consolidate tied feature checking</title>
<updated>2024-09-24T14:48:49+00:00</updated>
<author>
<name>David Wood</name>
<email>david.wood2@arm.com</email>
</author>
<published>2024-09-11T12:57:12+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=207bc77e15acc9444bf6c3e74fa46607490a8e8a'/>
<id>urn:sha1:207bc77e15acc9444bf6c3e74fa46607490a8e8a</id>
<content type='text'>
`rustc_codegen_llvm` and `rustc_codegen_gcc` duplicated logic for
checking if tied target features were partially enabled. This commit
consolidates these checks into `rustc_codegen_ssa` in the
`codegen_fn_attrs` query, which also is run pre-monomorphisation for
each function, which ensures that this check is run for unused functions,
as would be expected.
</content>
</entry>
</feed>
