Minor updates to stage docs. (#781)

This commit is contained in:
Eric Huss 2020-07-03 08:28:44 -07:00 committed by GitHub
parent f86c34e7d7
commit 434631397b
3 changed files with 17 additions and 15 deletions

View File

@ -128,7 +128,7 @@ The following tables indicate the outputs of various stage actions:
|-----------------------------------------------------------|----------------------------------------------| |-----------------------------------------------------------|----------------------------------------------|
| `beta` extracted | `build/HOST/stage0` | | `beta` extracted | `build/HOST/stage0` |
| `stage0` builds `bootstrap` | `build/bootstrap` | | `stage0` builds `bootstrap` | `build/bootstrap` |
| `stage0` builds `libstd` | `build/HOST/stage0-std/TARGET` | | `stage0` builds `libtest`/`libstd` | `build/HOST/stage0-std/TARGET` |
| copy `stage0-std` (HOST only) | `build/HOST/stage0-sysroot/lib/rustlib/HOST` | | copy `stage0-std` (HOST only) | `build/HOST/stage0-sysroot/lib/rustlib/HOST` |
| `stage0` builds `rustc` with `stage0-sysroot` | `build/HOST/stage0-rustc/HOST` | | `stage0` builds `rustc` with `stage0-sysroot` | `build/HOST/stage0-rustc/HOST` |
| copy `stage0-rustc (except executable)` | `build/HOST/stage0-sysroot/lib/rustlib/HOST` | | copy `stage0-rustc (except executable)` | `build/HOST/stage0-sysroot/lib/rustlib/HOST` |
@ -143,7 +143,7 @@ The following tables indicate the outputs of various stage actions:
| copy (uplift) `stage0-rustc` executable to `stage1` | `build/HOST/stage1/bin` | | copy (uplift) `stage0-rustc` executable to `stage1` | `build/HOST/stage1/bin` |
| copy (uplift) `stage0-codegen` to `stage1` | `build/HOST/stage1/lib` | | copy (uplift) `stage0-codegen` to `stage1` | `build/HOST/stage1/lib` |
| copy (uplift) `stage0-sysroot` to `stage1` | `build/HOST/stage1/lib` | | copy (uplift) `stage0-sysroot` to `stage1` | `build/HOST/stage1/lib` |
| `stage1` builds `libstd` | `build/HOST/stage1-std/TARGET` | | `stage1` builds `libtest`/`libstd` | `build/HOST/stage1-std/TARGET` |
| copy `stage1-std` (HOST only) | `build/HOST/stage1/lib/rustlib/HOST` | | copy `stage1-std` (HOST only) | `build/HOST/stage1/lib/rustlib/HOST` |
| `stage1` builds `rustc` | `build/HOST/stage1-rustc/HOST` | | `stage1` builds `rustc` | `build/HOST/stage1-rustc/HOST` |
| copy `stage1-rustc` (except executable) | `build/HOST/stage1/lib/rustlib/HOST` | | copy `stage1-rustc` (except executable) | `build/HOST/stage1/lib/rustlib/HOST` |
@ -151,14 +151,14 @@ The following tables indicate the outputs of various stage actions:
`--stage=1` stops here. `--stage=1` stops here.
| Stage 2 Action | Output | | Stage 2 Action | Output |
|-------------------------------------------|-----------------------------------------------------------------| |--------------------------------------------------------|-----------------------------------------------------------------|
| copy (uplift) `stage1-rustc` executable | `build/HOST/stage2/bin` | | copy (uplift) `stage1-rustc` executable | `build/HOST/stage2/bin` |
| copy (uplift) `stage1-sysroot` | `build/HOST/stage2/lib and build/HOST/stage2/lib/rustlib/HOST` | | copy (uplift) `stage1-sysroot` | `build/HOST/stage2/lib and build/HOST/stage2/lib/rustlib/HOST` |
| `stage2` builds `libstd` (except HOST?) | `build/HOST/stage2-std/TARGET` | | `stage2` builds `libtest`/`libstd` (not HOST targets) | `build/HOST/stage2-std/TARGET` |
| copy `stage2-std` (not HOST targets) | `build/HOST/stage2/lib/rustlib/TARGET` | | copy `stage2-std` (not HOST targets) | `build/HOST/stage2/lib/rustlib/TARGET` |
| `stage2` builds `rustdoc` | `build/HOST/stage2-tools/HOST` | | `stage2` builds `rustdoc` | `build/HOST/stage2-tools/HOST` |
| copy `rustdoc` | `build/HOST/stage2/bin` | | copy `rustdoc` | `build/HOST/stage2/bin` |
`--stage=2` stops here. `--stage=2` stops here.

View File

@ -95,10 +95,11 @@ The result is that compiling `rustc` is done in stages:
particular, the stage1 compiler itself was built by stage0 and particular, the stage1 compiler itself was built by stage0 and
hence not by the source in your working directory: this means that hence not by the source in your working directory: this means that
the symbol names used in the compiler source may not match the the symbol names used in the compiler source may not match the
symbol names that would have been made by the stage1 compiler. symbol names that would have been made by the stage1 compiler. This is
This can be important when using dynamic linking (e.g., with important when using dynamic linking and the lack of ABI compatibility
derives). Sometimes this means that some tests don't work when run between versions. This primarily manifests when tests try to link with any
with stage1. of the `rustc_*` crates or use the (now deprecated) plugin infrastructure.
These tests are marked with `ignore-stage1`.
- **Stage 2:** we rebuild our stage1 compiler with itself to produce - **Stage 2:** we rebuild our stage1 compiler with itself to produce
the stage2 compiler (i.e. it builds itself) to have all the _latest the stage2 compiler (i.e. it builds itself) to have all the _latest
optimizations_. (By default, we copy the stage1 libraries for use by optimizations_. (By default, we copy the stage1 libraries for use by

File diff suppressed because one or more lines are too long

Before

Width:  |  Height:  |  Size: 73 KiB

After

Width:  |  Height:  |  Size: 64 KiB