about summary refs log tree commit diff
diff options
context:
space:
mode:
authorbjorn3 <17426603+bjorn3@users.noreply.github.com>2024-03-31 09:01:37 +0000
committerbjorn3 <17426603+bjorn3@users.noreply.github.com>2024-03-31 09:01:37 +0000
commit7cdec718681936ff4a41ab8de712bfb415636983 (patch)
tree990983d8c47834460c58c754445193f36c510943
parente7829154b6dbfd0d5881fd6ce09a61108047e159 (diff)
downloadrust-7cdec718681936ff4a41ab8de712bfb415636983.tar.gz
rust-7cdec718681936ff4a41ab8de712bfb415636983.zip
Move the rustc testing section out of the readme
To make the readme a bit easier to read.
-rw-r--r--Readme.md22
-rw-r--r--docs/rustc_testing.md23
2 files changed, 24 insertions, 21 deletions
diff --git a/Readme.md b/Readme.md
index a297b22326f..00ea15cb38c 100644
--- a/Readme.md
+++ b/Readme.md
@@ -101,27 +101,7 @@ For additional ways to use rustc_codegen_cranelift like the JIT mode see [usage.
 
 ## Building and testing with changes in rustc code
 
-This is useful when changing code in `rustc_codegen_cranelift` as part of changing [main Rust repository](https://github.com/rust-lang/rust/).
-This can happen, for example, when you are implementing a new compiler intrinsic.
-
-Instruction below uses `$RustCheckoutDir` as substitute for any folder where you cloned Rust repository.
-
-You need to do this steps to successfully compile and use the cranelift backend with your changes in rustc code:
-
-1. `cd $RustCheckoutDir`
-2. Run `python x.py setup` and choose option for compiler (`b`).
-3. Build compiler and necessary tools: `python x.py build --stage=2 compiler library/std src/tools/rustdoc src/tools/rustfmt`
-   * (Optional) You can also build cargo by adding `src/tools/cargo` to previous command.
-4. Copy cargo from a nightly toolchain: `cp $(rustup +nightly which cargo) ./build/host/stage2/bin/cargo`. Note that you would need to do this every time you rebuilt `rust` repository.
-5. Link your new `rustc` to toolchain: `rustup toolchain link stage2 ./build/host/stage2/`.
-6. (Windows only) compile the build system: `rustc +stage2 -O build_system/main.rs -o y.exe`.
-7. You need to prefix every `./y.sh` (or `y` if you built `build_system/main.rs` as `y`) command by `rustup run stage2` to make cg_clif use your local changes in rustc.
-  * `rustup run stage2 ./y.sh prepare`
-  * `rustup run stage2 ./y.sh build`
-  * (Optional) run tests: `rustup run stage2 ./y.sh test`
-8. Now you can use your cg_clif build to compile other Rust programs, e.g. you can open any Rust crate and run commands like `$RustCheckoutDir/compiler/rustc_codegen_cranelift/dist/cargo-clif build --release`.
-
-You can also set `rust-analyzer.rustc.source` to your rust workspace to get rust-analyzer to understand your changes.
+See [rustc_testing.md](docs/rustc_testing.md).
 
 ## Not yet supported
 
diff --git a/docs/rustc_testing.md b/docs/rustc_testing.md
new file mode 100644
index 00000000000..88c55557231
--- /dev/null
+++ b/docs/rustc_testing.md
@@ -0,0 +1,23 @@
+# Building and testing with changes in rustc code
+
+This is useful when changing code in `rustc_codegen_cranelift` as part of changing [main Rust repository](https://github.com/rust-lang/rust/).
+This can happen, for example, when you are implementing a new compiler intrinsic.
+
+Instruction below uses `$RustCheckoutDir` as substitute for any folder where you cloned Rust repository.
+
+You need to do this steps to successfully compile and use the cranelift backend with your changes in rustc code:
+
+1. `cd $RustCheckoutDir`
+2. Run `python x.py setup` and choose option for compiler (`b`).
+3. Build compiler and necessary tools: `python x.py build --stage=2 compiler library/std src/tools/rustdoc src/tools/rustfmt`
+   * (Optional) You can also build cargo by adding `src/tools/cargo` to previous command.
+4. Copy cargo from a nightly toolchain: `cp $(rustup +nightly which cargo) ./build/host/stage2/bin/cargo`. Note that you would need to do this every time you rebuilt `rust` repository.
+5. Link your new `rustc` to toolchain: `rustup toolchain link stage2 ./build/host/stage2/`.
+6. (Windows only) compile the build system: `rustc +stage2 -O build_system/main.rs -o y.exe`.
+7. You need to prefix every `./y.sh` (or `y` if you built `build_system/main.rs` as `y`) command by `rustup run stage2` to make cg_clif use your local changes in rustc.
+  * `rustup run stage2 ./y.sh prepare`
+  * `rustup run stage2 ./y.sh build`
+  * (Optional) run tests: `rustup run stage2 ./y.sh test`
+8. Now you can use your cg_clif build to compile other Rust programs, e.g. you can open any Rust crate and run commands like `$RustCheckoutDir/compiler/rustc_codegen_cranelift/dist/cargo-clif build --release`.
+
+You can also set `rust-analyzer.rustc.source` to your rust workspace to get rust-analyzer to understand your changes.