Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Slightly reorganize ecosystem tests, stub out codegen backend test pages #2299

Merged
merged 2 commits into from
Mar 24, 2025
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion book.toml
Original file line number Diff line number Diff line change
Expand Up @@ -62,5 +62,7 @@ warning-policy = "error"
"/diagnostics/sessiondiagnostic.html" = "diagnostic-structs.html"
"/diagnostics/diagnostic-codes.html" = "error-codes.html"
"/miri.html" = "const-eval/interpret.html"
"/tests/integration.html" = "ecosystem.html"
"/tests/fuchsia.html" = "ecosystem-test-jobs/fuchsia.html"
"/tests/headers.html" = "directives.html"
"/tests/integration.html" = "ecosystem.html"
"/tests/rust-for-linux.html" = "ecosystem-test-jobs/rust-for-linux.html"
7 changes: 5 additions & 2 deletions src/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,11 @@
- [Minicore](./tests/minicore.md)
- [Ecosystem testing](./tests/ecosystem.md)
- [Crater](./tests/crater.md)
- [Fuchsia](./tests/fuchsia.md)
- [Rust for Linux](./tests/rust-for-linux.md)
- [Fuchsia](./tests/ecosystem-test-jobs/fuchsia.md)
- [Rust for Linux](./tests/ecosystem-test-jobs/rust-for-linux.md)
- [Codegen backend testing](./tests/codegen-backend-tests/intro.md)
- [Cranelift codegen backend](./tests/codegen-backend-tests/cg_clif.md)
- [GCC codegen backend](./tests/codegen-backend-tests/cg_gcc.md)
- [Performance testing](./tests/perf.md)
- [Suggest tests tool](./tests/suggest-tests.md)
- [Misc info](./tests/misc.md)
Expand Down
2 changes: 1 addition & 1 deletion src/notification-groups/fuchsia.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@ This list will be used to notify [Fuchsia][fuchsia] maintainers
when the compiler or the standard library changes in a way that would
break the Fuchsia integration.

[fuchsia]: ../tests/fuchsia.md
[fuchsia]: ../tests/ecosystem-test-jobs/fuchsia.md
3 changes: 3 additions & 0 deletions src/tests/codegen-backend-tests/cg_clif.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# Cranelift codegen backend tests

TODO: please add some more information to this page.
3 changes: 3 additions & 0 deletions src/tests/codegen-backend-tests/cg_gcc.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
# GCC codegen backend tests

TODO: please add some more information to this page.
13 changes: 13 additions & 0 deletions src/tests/codegen-backend-tests/intro.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Codegen backend testing

See also the [Code generation](../../../src/backend/codegen.md) chapter.

In addition to the primary LLVM codegen backend, the rust-lang/rust CI also runs tests of the [cranelift][cg_clif] and [GCC][cg_gcc] codegen backends in certain test jobs.

For more details on the tests involved, see:

- [Cranelift codegen backend tests](./cg_clif.md)
- [GCC codegen backend tests](./cg_gcc.md)

[cg_clif]: https://github.com/rust-lang/rustc_codegen_cranelift
[cg_gcc]: https://github.com/rust-lang/rustc_codegen_gcc
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ using your local Rust toolchain.
src/ci/docker/run.sh x86_64-fuchsia
```

See the [Testing with Docker](docker.md) chapter for more details on how to run
See the [Testing with Docker](../docker.md) chapter for more details on how to run
and debug jobs with Docker.

Note that a Fuchsia checkout is *large* – as of this writing, a checkout and
Expand Down Expand Up @@ -170,7 +170,7 @@ rustc book][platform-support].
[`public_configs`]: https://gn.googlesource.com/gn/+/main/docs/reference.md#var_public_configs
[`//build/config:compiler`]: https://cs.opensource.google/fuchsia/fuchsia/+/main:build/config/BUILD.gn;l=121;drc=c26c473bef93b33117ae417893118907a026fec7
[build system]: https://fuchsia.dev/fuchsia-src/development/build/build_system
[fuchsia-ping]: ../notification-groups/fuchsia.md
[fuchsia-ping]: ../../notification-groups/fuchsia.md

[^loc]: As of June 2024, Fuchsia had about 2 million lines of first-party Rust
code and a roughly equal amount of third-party code, as counted by tokei
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -48,4 +48,4 @@ line to your PR description:
Then when you `@bors try` it will pick the job that builds the Rust for Linux
integration.

[rfl-ping]: ../notification-groups/rust-for-linux.md
[rfl-ping]: ../../notification-groups/rust-for-linux.md
4 changes: 2 additions & 2 deletions src/tests/ecosystem.md
Original file line number Diff line number Diff line change
Expand Up @@ -24,5 +24,5 @@ there aren't any significant regressions.
We have CI jobs that build large open-source Rust projects that are used as
regression tests in CI. Our integration jobs build the following projects:

- [Fuchsia](fuchsia.md)
- [Rust for Linux](rust-for-linux.md)
- [Fuchsia](./ecosystem-test-jobs/fuchsia.md)
- [Rust for Linux](./ecosystem-test-jobs/rust-for-linux.md)
8 changes: 6 additions & 2 deletions src/tests/intro.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ directory, and `x` will essentially run `cargo test` on that package.
Examples:

| Command | Description |
| ----------------------------------------- | ------------------------------------- |
|-------------------------------------------|---------------------------------------|
| `./x test library/std` | Runs tests on `std` only |
| `./x test library/core` | Runs tests on `core` only |
| `./x test compiler/rustc_data_structures` | Runs tests on `rustc_data_structures` |
Expand Down Expand Up @@ -86,7 +86,7 @@ above.
Examples:

| Command | Description |
| ----------------------- | ------------------------------------------------------------------ |
|-------------------------|--------------------------------------------------------------------|
| `./x fmt --check` | Checks formatting and exits with an error if formatting is needed. |
| `./x fmt` | Runs rustfmt across the entire codebase. |
| `./x test tidy --bless` | First runs rustfmt to format the codebase, then runs tidy checks. |
Expand Down Expand Up @@ -155,6 +155,10 @@ chapter](ecosystem.md) for more details.
A separate infrastructure is used for testing and tracking performance of the
compiler. See the [Performance testing chapter](perf.md) for more details.

### Codegen backend testing

See [Codegen backend testing](./codegen-backend-tests/intro.md).

## Miscellaneous information

There are some other useful testing-related info at [Misc info](misc.md).
Expand Down