<feed xmlns='http://www.w3.org/2005/Atom'>
<title>rust/compiler/rustc_codegen_ssa/src/back/command.rs, branch stable</title>
<subtitle>https://github.com/rust-lang/rust
</subtitle>
<id>http://git.dreamy.place/mirrors/rust/atom?h=stable</id>
<link rel='self' href='http://git.dreamy.place/mirrors/rust/atom?h=stable'/>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/'/>
<updated>2025-03-14T13:45:49+00:00</updated>
<entry>
<title>feat(linker): check ARG_MAX on Unix platforms</title>
<updated>2025-03-14T13:45:49+00:00</updated>
<author>
<name>Weihang Lo</name>
<email>me@weihanglo.tw</email>
</author>
<published>2025-03-14T13:43:30+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=08166b5b239beb794a48bec52adc6e5261b166d1'/>
<id>urn:sha1:08166b5b239beb794a48bec52adc6e5261b166d1</id>
<content type='text'>
On Unix the limits can be gargantuan anyway so we're pretty
unlikely to hit them, but might still exceed it.
We consult ARG_MAX here to get an estimate.
</content>
</entry>
<entry>
<title>fix(linker): use arg list estimate on only Windows</title>
<updated>2025-03-14T13:42:18+00:00</updated>
<author>
<name>Weihang Lo</name>
<email>me@weihanglo.tw</email>
</author>
<published>2025-03-14T12:55:53+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=a672448f0d223bcfa6907d17c321015ac83606d7'/>
<id>urn:sha1:a672448f0d223bcfa6907d17c321015ac83606d7</id>
<content type='text'>
Though I doubt anyone running rustc outside Unix/Windows
</content>
</entry>
<entry>
<title>fix(linker): prevent overflow when estimating CLI arg list length</title>
<updated>2025-03-14T13:42:12+00:00</updated>
<author>
<name>Weihang Lo</name>
<email>me@weihanglo.tw</email>
</author>
<published>2025-03-13T00:58:56+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=79034bd291c13b92d68561ba957dc898c6ad3ae7'/>
<id>urn:sha1:79034bd291c13b92d68561ba957dc898c6ad3ae7</id>
<content type='text'>
This also updates the estimate on Windows of the length argument
list to `saturating_add` to avoid overflow.
</content>
</entry>
<entry>
<title>fix: remove the check of lld not supporting @response-file</title>
<updated>2025-03-12T22:36:21+00:00</updated>
<author>
<name>Weihang Lo</name>
<email>me@weihanglo.tw</email>
</author>
<published>2025-03-12T22:36:21+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c8a6fcc3c838af8152fda0a22a8946914aaa5770'/>
<id>urn:sha1:c8a6fcc3c838af8152fda0a22a8946914aaa5770</id>
<content type='text'>
In LLVM v9, lld has supported @response-file
LLVM v9 was released on 2019-09-19.
And the check was added back to 2018-03-14 (1.26.0) via 04442af18bf0.
It has been more than five years, and we ship our own lld regardlessly.
This should be happily removed.

See also:

* &lt;https://github.com/llvm/llvm-project/commit/bb12396f9175eaf4586d8e5c76441977d97ccf93&gt;
* &lt;https://reviews.llvm.org/D63024&gt;
</content>
</entry>
<entry>
<title>Shorten linker output even more when `--verbose` is not present</title>
<updated>2025-01-25T21:04:52+00:00</updated>
<author>
<name>jyn</name>
<email>github@jyn.dev</email>
</author>
<published>2025-01-18T21:55:31+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=c1b4ab0e7369836aaabd3e3b5ff2d8c11471e81f'/>
<id>urn:sha1:c1b4ab0e7369836aaabd3e3b5ff2d8c11471e81f</id>
<content type='text'>
- Don't show environment variables. Seeing PATH is almost never useful, and it can be extremely long.
- For .rlibs in the sysroot, replace crate hashes with a `"-*"` string. This will expand to the full crate name when pasted into the shell.
- Move `.rlib` to outside the glob.
- Abbreviate the sysroot path to `&lt;sysroot&gt;` wherever it appears in the arguments.

This also adds an example of the linker output as a run-make test. Currently it only runs on x86_64-unknown-linux-gnu, because each platform has its own linker arguments. So that it's stable across machines, pass BUILD_ROOT as an argument through compiletest through to run-make tests.

- Only use linker-flavor=gnu-cc if we're actually going to compare the output. It doesn't exist on MacOS.
</content>
</entry>
<entry>
<title>Minimize visibilities.</title>
<updated>2024-09-17T06:24:33+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2024-09-05T05:16:55+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=bdacdfe95f17188f5b047e0330e3e47f993a2016'/>
<id>urn:sha1:bdacdfe95f17188f5b047e0330e3e47f993a2016</id>
<content type='text'>
This makes it much clearer which things are used outside the crate.
</content>
</entry>
<entry>
<title>Reformat `use` declarations.</title>
<updated>2024-07-28T22:26:52+00:00</updated>
<author>
<name>Nicholas Nethercote</name>
<email>n.nethercote@gmail.com</email>
</author>
<published>2024-07-28T22:13:50+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=84ac80f1921afc243d71fd0caaa4f2838c294102'/>
<id>urn:sha1:84ac80f1921afc243d71fd0caaa4f2838c294102</id>
<content type='text'>
The previous commit updated `rustfmt.toml` appropriately. This commit is
the outcome of running `x fmt --all` with the new formatting options.
</content>
</entry>
<entry>
<title>Update comment and remove special-case for Wasm targets which is incompatible with response-file changes</title>
<updated>2024-03-20T23:38:15+00:00</updated>
<author>
<name>Douglas Young</name>
<email>rcxdude@gmail.com</email>
</author>
<published>2024-03-20T23:37:46+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=6b0a706cb4ce8114f7e082955cd3e53bdc0bc976'/>
<id>urn:sha1:6b0a706cb4ce8114f7e082955cd3e53bdc0bc976</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Reduce usage of Symbol in the linker code</title>
<updated>2022-06-28T18:38:36+00:00</updated>
<author>
<name>bjorn3</name>
<email>17426603+bjorn3@users.noreply.github.com</email>
</author>
<published>2022-06-28T17:47:33+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=f688f4d1e4753ca0a83a1413a7b98fb8727c04a2'/>
<id>urn:sha1:f688f4d1e4753ca0a83a1413a7b98fb8727c04a2</id>
<content type='text'>
Interning here doesn't save us anything. It rather costs a bit of time.
</content>
</entry>
<entry>
<title>Simplify implementation of `-Z gcc-ld`</title>
<updated>2022-05-25T20:55:22+00:00</updated>
<author>
<name>Vadim Petrochenkov</name>
<email>vadim.petrochenkov@gmail.com</email>
</author>
<published>2022-05-24T20:29:15+00:00</published>
<link rel='alternate' type='text/html' href='http://git.dreamy.place/mirrors/rust/commit/?id=2984bf674f5f1839c19002f4fd032eacc98596c9'/>
<id>urn:sha1:2984bf674f5f1839c19002f4fd032eacc98596c9</id>
<content type='text'>
- The logic is now unified for all targets (wasm targets should also be supported now)
- Additional "symlink" files like `ld64` are eliminated
- lld-wrapper is used for propagating the correct lld flavor
- Cleanup "unwrap or exit" logic in lld-wrapper
</content>
</entry>
</feed>
