rust/src
bors 871407a034 Auto merge of #115554 - Kobzol:single-cgu, r=Mark-Simulacrum
Build `rustc` with a single CGU on x64 Linux

This PR adds the `rust.codegen-units=1` setting when compiling the 64-bit Linux `rustc` artifact (the one used for try builds and Linux rustup distribution). This had mixed results in the past, however after the bump to LLVM 17, the results now seem pretty [incredible](https://github.com/rust-lang/rust/pull/115554#issuecomment-1706518199). Instruction counts, cycles, wall time, max RSS and even artifact sizes see large improvements.

The last [try build](https://github.com/rust-lang-ci/rust/actions/runs/6077686494/job/16487768049) with this setting took 1h 8m, which is basically the same duration for try builds that we have seen recently. So there shouldn't be any large hit to CI/build time.

I hope that this could potentially also reduce codegen noise of `rustc` a little bit, since small changes within a single `rustc` crate should no longer perturb optimizations because of CGU movement. We still do cross-crate LTO, so it won't eliminate it though.

r? `@Mark-Simulacrum`
2023-10-01 12:49:29 +00:00
..
bootstrap Rollup merge of #116292 - onur-ozkan:warn-wrong-sources, r=clubby789 2023-10-01 12:18:11 +02:00
ci Auto merge of #115554 - Kobzol:single-cgu, r=Mark-Simulacrum 2023-10-01 12:49:29 +00:00
doc Update location of language-features/plugin.md 2023-09-30 23:45:32 +03:00
etc Auto merge of #104385 - BlackHoleFox:apple-minimum-bumps, r=petrochenkov 2023-09-24 02:35:05 +00:00
librustdoc Auto merge of #116195 - fmease:rustdoc-investigate-perf-regression, r=GuillaumeGomez 2023-09-30 09:18:06 +00:00
llvm-project@d404cba4e3 Update LLVM submodule 2023-09-28 13:41:02 +02:00
rustdoc-json-types rustdoc-json: Rename typedef to type alias 2023-08-21 14:02:34 -07:00
tools Auto merge of #116307 - RalfJung:miri, r=RalfJung 2023-10-01 07:43:21 +00:00
README.md Remove stale reference to the test suite location 2023-01-13 11:49:06 +00:00
stage0.json Update stage0 to next beta 2023-08-22 06:58:03 -04:00
version Bump to 1.75.0 2023-09-30 19:09:22 -04:00

This directory contains some source code for the Rust project, including:

  • The bootstrapping build system
  • Various submodules for tools, like cargo, tidy, etc.

For more information on how various parts of the compiler work, see the rustc dev guide.