tree a4dd711b0be373ac8411365ef5e6436cc03f3f4c
parent 695da5b7828e017bab1cb5fbaaa64bf63784813b
parent 3d69dd1661361479dad4b867cca91bff9e8dd13b
author Matthias Krüger <matthias.krueger@famsik.de> 1735980877 +0100
committer GitHub <noreply@github.com> 1735980877 +0100
gpgsig -----BEGIN PGP SIGNATURE-----
 
 wsFcBAABCAAQBQJnePdNCRC1aQ7uu5UhlAAA7kUQAFTUY76j9m3j1lRglmLrDYZ0
 SbGQPBRPyCM1CmgPCMdAvo7Ufrk+lPNrxZnpUQ3+vzuITcDUfYp9AanXH7AXYYSp
 qAQdNMwbybhnz1en0P6MPNc7S1JZLXGf/kEmH9G4e3Slr6YCJ0zT81ijRY2Xdd1X
 2NzWwIi7AougXuwa3ctDx+jPX7bCHY49GCGYwJN5mSH4sFOx9iB/+MN2oIGlQRzE
 hGZesZo1fNSXSV/pqPKloTwVqq9UX/3vXfp6XD02nrBYjoDHbz1XINOt9dZOiBUX
 MZrEXLzlTkLpQFLl0zF1rytyU+ExVRWAKcwA9d/bDs/uLsiISFoSBL58M3r/RIu8
 nUQ6TPV//JJbgkEuNPsrybzWcoEI+ztsaevMXNA8CHskC8PTXDIkF0ZBwI70ieaR
 Pj+klQ4ylEwcUI2885F7GVqC8uexOcZdjjLk+9mE1F8QtEs/z4Qo9hpgQXbfixYP
 89Ah20e57pPBdk1jyeubv1As+4/Ijs1TCpkSG8DP8TE44uZ6OuRNHjvSkwwlLtD6
 xXnhgJdXAWCjMyPs5GrlmtnRika9DQCGqpysfcQ4DQZzcHAnXWk15Zi+Byww/0D8
 JxEiovvS8w3bBOlWP5nCif5Cz2GjcBKhje4moo9pzsSmXGCS00pRemAbxX1f4n18
 63Pq7XjQgqPFrz2jGBom
 =wCi5
 -----END PGP SIGNATURE-----
 

Rollup merge of #135001 - Kobzol:bootstrap-mcp-510, r=onur-ozkan

Allow using self-contained LLD in bootstrap

In https://github.com/rust-lang/rust/pull/116278, I added a `"self-contained"` mode to the `rust.use-lld` bootstrap option, which was designed for using the built-in LLD for linking compiler artifacts. However, this was later reverted in https://github.com/rust-lang/rust/pull/118810.

This PR brings the old logic back, which switches LLD in bootstrap from `-fuse-ld=lld` to [MCP510](https://github.com/rust-lang/compiler-team/issues/510)'s way of passing linker flags to enable LLD (both external and self-contained). So this does two changes:
1) Goes from `-fuse-ld=lld` to MCP510
2) Actually makes it possible to use the self-contained LLD to compile compiler artifacts

Regarding the second commit: Since https://github.com/rust-lang/rust/pull/86113, we have been passing `-fuse-ld=lld` as a target flag to all tests when `use-lld = true` is enabled. This kind of worked for all tests, since it was just a linker argument, which has bypassed any compiler checks, and probably resulted only in some warning if the given target linker didn't actually support LLD. However, after the first commit, some tests actually start failing with this approach:
```
error: linker flavor `gnu-lld-cc` is incompatible with the current target
   |
   = note: compatible flavors are: llbc, ptx
```
So the second commit removes the passing of LLD flags as target flags to tests. I don't think that it's a good idea to pass specific compiler flags to all tests unconditionally, tbh. The doctest command from #86113 doesn't go through compiletest anymore, and doctests should be quite a lot faster since https://github.com/rust-lang/rust/pull/126245 in general.

CC `@the8472`

If someone has a beefy machine, it would be nice to test whether this doesn't regress test execution speed. How to do that:
1) Enable `rust.use-lld = true` and `rust.lld = true` in `config.toml`
2) Benchmark `./x test tests/ui --force-rerun` between `master` and this PR

Once this is tested in the wild, I would like to make the self-contained LLD the default in CI, hopefully to make CI builds faster.

r? `@onur-ozkan`
