When building stage 2, we could copy the libstd etc that we built from stage1 instead of rebuilding (it has the correct metadata format). If we are using --enable-local-rust, we could do this even with --stage 1 for the output from stage0 (presuming that you haven't locally changed the metadata). The downside is that you lose the testing of running the compiler you just built on libstd.
This is orthogonal from incremental, but related in that it is a good way to improve local turnaround time, particularly since we can't use incremental after stage0 (since the compiler itself changed underfoot). As such, I'm forking this issue off from #37929.
cc @alexcrichton, who suggested this
When building stage 2, we could copy the libstd etc that we built from stage1 instead of rebuilding (it has the correct metadata format). If we are using
--enable-local-rust, we could do this even with--stage 1for the output from stage0 (presuming that you haven't locally changed the metadata). The downside is that you lose the testing of running the compiler you just built on libstd.This is orthogonal from incremental, but related in that it is a good way to improve local turnaround time, particularly since we can't use incremental after stage0 (since the compiler itself changed underfoot). As such, I'm forking this issue off from #37929.
cc @alexcrichton, who suggested this