Separate codegen from metadata #49722
Labels
I-compiletime
Issue: Problems and improvements with respect to compile times.
T-compiler
Relevant to the compiler team, which will review and decide on the PR/issue.
I didn't research deeply on this; if what I said is not applicable please close this.
We currently waits for artefacts of dependencies to be built before building the main crate; however, we don't really need the full optimized code before proceeding to the main crate.
Instead, we can split the step into two: check for code errors and emit metadata, and running the actual codegen (plus linking). This way we can have better parallelism. Taking the rustc codebase for example, we no longer have to block on LLVM optimizing librustc or libsyntax_ext, but instead compile other components in parallel.
How we split this remains to be discussed:
The text was updated successfully, but these errors were encountered: