Add colors to diagram

This commit is contained in:
Noah Lev 2022-08-09 14:36:49 -07:00 committed by Joshua Nelson
parent ebad7d357a
commit 27512fd7ff
1 changed files with 11 additions and 6 deletions

View File

@ -20,22 +20,27 @@ rustc, then uses it to compile the new compiler.
Compiling `rustc` is done in stages. Here's a diagram, adapted from Joshua Nelson's Compiling `rustc` is done in stages. Here's a diagram, adapted from Joshua Nelson's
[talk on bootstrapping][rustconf22-talk] at RustConf 2022, with detailed explanations below. [talk on bootstrapping][rustconf22-talk] at RustConf 2022, with detailed explanations below.
The `A`, `B`, `C`, and `D` show the ordering of the stages of bootstrapping. The `A`, `B`, `C`, and `D` show the ordering of the stages of bootstrapping.
<span style="background-color: yellow">Yellow</span> nodes are built with the stage0 compiler, and
<span style="background-color: lightgreen">green</span> nodes are built with the stage1 compiler.
[rustconf22-talk]: https://rustconf.com/schedule#bootstrapping-the-once-and-future-compiler [rustconf22-talk]: https://rustconf.com/schedule#bootstrapping-the-once-and-future-compiler
```mermaid ```mermaid
graph TD graph TD
s0c["stage0 compiler (1.63)"] -->|A| s0l("stage0 std (1.64)"); s0c["stage0 compiler (1.63)"] -->|A| s0l("stage0 std (1.64)"):::with-s0c;
s0c & s0l --- stepb[ ]:::empty; s0c & s0l --- stepb[ ]:::empty;
stepb -->|B| s0ca["stage0 compiler artifacts (1.64)"]; stepb -->|B| s0ca["stage0 compiler artifacts (1.64)"]:::with-s0c;
s0ca -->|copy| s1c["stage1 compiler (1.64)"]; s0ca -->|copy| s1c["stage1 compiler (1.64)"]:::with-s0c;
s1c -->|C| s1l("stage1 std (1.64)"); s1c -->|C| s1l("stage1 std (1.64)"):::with-s1c;
s1c & s1l --- stepd[ ]:::empty; s1c & s1l --- stepd[ ]:::empty;
stepd -->|D| s1ca["stage1 compiler artifacts (1.64)"]; stepd -->|D| s1ca["stage1 compiler artifacts (1.64)"]:::with-s1c;
s1ca -->|copy| s2c["stage2 compiler"]; s1ca -->|copy| s2c["stage2 compiler"]:::with-s1c;
classDef empty width:0px,height:0px; classDef empty width:0px,height:0px;
classDef with-s0c fill: yellow;
classDef with-s1c fill: lightgreen, color: black;
``` ```
### Stage 0 ### Stage 0