Skip to content

Conversation

jieyouxu
Copy link
Member

@jieyouxu jieyouxu commented Apr 2, 2025

Supersedes #138066.

Blocker for #141856.

Based on #138066 plus rustdoc() cross-compile changes.

Summary

This PR automatically specifies --target to rustc() and rustdoc() to have rustc/rustdoc produce cross-compiled artifacts in run-make tests by default, unless:

  • //@ ignore-cross-compile is used, or
  • bare_{rustc,rustdoc} are used, or
  • Explicit .target() is specified, which overrides the default cross-compile target.

Some tests are necessarily modified:

  • Tests that have .target(target()) have that incantation removed (since this is now automatically the default).
  • Some tests have //@ needs-target-std, but are a necessary-but-insufficient condition, and are changed to //@ ignore-cross-compile instead as host-only tests.
    • A few tests received //@ ignore-musl that fail against x86_64-unknown-linux-musl because of inability to find -lunwind. AFAICT, they don't need to test cross-compiled artifacts.
    • Some tests are constrained to host-only for now, because the effort to make them pass on cross-compile does not seem worth the complexity, and it's not really meaningfully improving test coverage.

try-job: dist-various-1

@rustbot rustbot added A-run-make Area: port run-make Makefiles to rmake.rs S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue. labels Apr 2, 2025
@jieyouxu jieyouxu added S-experimental Status: Ongoing experiment that does not require reviewing and won't be merged in its current state. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Apr 2, 2025
@jieyouxu
Copy link
Member Author

jieyouxu commented Apr 2, 2025

@bors try

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 2, 2025
…<try>

[WIP] [WIP] Enable automatic cross-compilation in run-make tests

WIP for the WIP rust-lang#138066.

Based on rust-lang#138066 with rust-lang#139242 + rust-lang#139239 cherry-picked in, plus `rustdoc()` cross-compile changes.

r? `@ghost`

try-job: armhf-gnu
try-job: test-various
try-job: x86_64-msvc-1
try-job: i686-msvc-1
try-job: x86_64-mingw-1
try-job: i686-mingw-1
try-job: aarch64-apple
try-job: x86_64-apple-1
@bors
Copy link
Collaborator

bors commented Apr 2, 2025

⌛ Trying commit c09efec with merge a0afa67...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Apr 2, 2025

💔 Test failed - checks-actions

@bors bors added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 2, 2025
@bors
Copy link
Collaborator

bors commented Apr 2, 2025

☔ The latest upstream changes (presumably #139257) made this pull request unmergeable. Please resolve the merge conflicts.

@jieyouxu jieyouxu force-pushed the exp/auto-cross-run-make branch from c09efec to 9140e31 Compare April 4, 2025 03:19
@jieyouxu
Copy link
Member Author

jieyouxu commented Apr 4, 2025

@bors try

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 4, 2025
…<try>

[WIP] [WIP] Enable automatic cross-compilation in run-make tests

WIP for the WIP rust-lang#138066.

Based on rust-lang#138066 with rust-lang#139242 + rust-lang#139239 cherry-picked in, plus `rustdoc()` cross-compile changes.

r? `@ghost`

try-job: armhf-gnu
try-job: test-various
try-job: x86_64-msvc-1
try-job: i686-msvc-1
try-job: x86_64-mingw-1
try-job: i686-mingw-1
try-job: aarch64-apple
try-job: x86_64-apple-1
@bors
Copy link
Collaborator

bors commented Apr 4, 2025

⌛ Trying commit 9140e31 with merge a58362d...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Apr 4, 2025

💔 Test failed - checks-actions

@jieyouxu jieyouxu requested a review from Copilot April 7, 2025 07:05
@jieyouxu
Copy link
Member Author

jieyouxu commented Apr 7, 2025

Aaaaa I accidentally clicked again 💀

@jieyouxu jieyouxu removed the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 7, 2025
Copilot

This comment was marked as off-topic.

@bors
Copy link
Collaborator

bors commented Apr 12, 2025

☔ The latest upstream changes (presumably #139242) made this pull request unmergeable. Please resolve the merge conflicts.

@bors bors added the S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. label Apr 12, 2025
@jieyouxu jieyouxu force-pushed the exp/auto-cross-run-make branch from 9140e31 to 520d534 Compare April 13, 2025 02:39
bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 13, 2025
…=<try>

[WIP] Enable automatic cross-compilation for run-make rustdoc tests

Extracted out of rust-lang#139244.
Helps with rust-lang#138066.

r? `@ghost`

try-job: armhf-gnu
try-job: test-various
try-job: x86_64-msvc-1
try-job: i686-msvc-1
try-job: x86_64-mingw-1
try-job: aarch64-apple
try-job: x86_64-apple-1
@jieyouxu
Copy link
Member Author

@bors try

@bors
Copy link
Collaborator

bors commented Apr 13, 2025

⌛ Trying commit 520d534 with merge 8efb167...

bors added a commit to rust-lang-ci/rust that referenced this pull request Apr 13, 2025
…<try>

[WIP] [WIP] Enable automatic cross-compilation in run-make tests

WIP for the WIP rust-lang#138066.

Based on rust-lang#138066 with rust-lang#139242 + rust-lang#139239 cherry-picked in, plus `rustdoc()` cross-compile changes.

r? `@ghost`

try-job: armhf-gnu
try-job: test-various
try-job: x86_64-msvc-1
try-job: i686-msvc-1
try-job: x86_64-mingw-1
try-job: aarch64-apple
try-job: x86_64-apple-1
bors added a commit that referenced this pull request Jun 18, 2025
Enable automatic cross-compilation in run-make tests

Supersedes #138066.

Blocker for #141856.

Based on #138066 plus `rustdoc()` cross-compile changes.

### Summary

This PR automatically specifies `--target` to `rustc()` and `rustdoc()` to have `rustc`/`rustdoc` produce cross-compiled artifacts in run-make tests by default, unless:

- `//@ ignore-cross-compile` is used, or
- `bare_{rustc,rustdoc}` are used, or
- Explicit `.target()` is specified, which overrides the default cross-compile target.

Some tests are necessarily modified:

- Tests that have `.target(target())` have that incantation removed (since this is now automatically the default).
- Some tests have `//@ needs-target-std`, but are a necessary-but-insufficient condition, and are changed to `//@ ignore-cross-compile` instead as host-only tests.
    - A few tests received `//@ ignore-musl` that fail against `x86_64-unknown-linux-musl` because of inability to find `-lunwind`. AFAICT, they don't *need* to test cross-compiled artifacts.
    - Some tests are constrained to host-only for now, because the effort to make them pass on cross-compile does not seem worth the complexity, and it's not really *meaningfully* improving test coverage.

try-job: armhf-gnu
try-job: test-various
@bors
Copy link
Collaborator

bors commented Jun 18, 2025

⌛ Testing commit 3f77eaa with merge 5328dfb...

@rust-log-analyzer

This comment has been minimized.

@bors
Copy link
Collaborator

bors commented Jun 18, 2025

💔 Test failed - checks-actions

@bors bors added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Jun 18, 2025
@jieyouxu jieyouxu force-pushed the exp/auto-cross-run-make branch from 3f77eaa to 2beccc4 Compare June 18, 2025 23:38
@jieyouxu
Copy link
Member Author

@bors2 try

@rust-bors
Copy link

rust-bors bot commented Jun 18, 2025

❌ Encountered an error while executing command

@jieyouxu jieyouxu added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Jun 18, 2025
@jieyouxu
Copy link
Member Author

@bors2 try jobs=dist-various-1

@rust-bors
Copy link

rust-bors bot commented Jun 18, 2025

⌛ Trying commit 2beccc4 with merge 4407185

To cancel the try build, run the command @bors2 try cancel.

rust-bors bot added a commit that referenced this pull request Jun 18, 2025
Enable automatic cross-compilation in run-make tests

Supersedes #138066.

Blocker for #141856.

Based on #138066 plus `rustdoc()` cross-compile changes.

### Summary

This PR automatically specifies `--target` to `rustc()` and `rustdoc()` to have `rustc`/`rustdoc` produce cross-compiled artifacts in run-make tests by default, unless:

- `//@ ignore-cross-compile` is used, or
- `bare_{rustc,rustdoc}` are used, or
- Explicit `.target()` is specified, which overrides the default cross-compile target.

Some tests are necessarily modified:

- Tests that have `.target(target())` have that incantation removed (since this is now automatically the default).
- Some tests have `//@ needs-target-std`, but are a necessary-but-insufficient condition, and are changed to `//@ ignore-cross-compile` instead as host-only tests.
    - A few tests received `//@ ignore-musl` that fail against `x86_64-unknown-linux-musl` because of inability to find `-lunwind`. AFAICT, they don't *need* to test cross-compiled artifacts.
    - Some tests are constrained to host-only for now, because the effort to make them pass on cross-compile does not seem worth the complexity, and it's not really *meaningfully* improving test coverage.

try-job: dist-various-1
try-job: dist-various-1
@rust-bors
Copy link

rust-bors bot commented Jun 19, 2025

☀️ Try build successful (CI)
Build commit: 4407185 (4407185ccda9dec46b876d815019be455fb7f172, parent: c68340350c78eea402c4a85f8d9c1b7d3d607635)

@jieyouxu
Copy link
Member Author

@bors r=Kobzol

@bors
Copy link
Collaborator

bors commented Jun 19, 2025

📌 Commit 2beccc4 has been approved by Kobzol

It is now in the queue for this repository.

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Jun 19, 2025
@bors
Copy link
Collaborator

bors commented Jun 19, 2025

⌛ Testing commit 2beccc4 with merge 70e2b4a...

@bors
Copy link
Collaborator

bors commented Jun 19, 2025

☀️ Test successful - checks-actions
Approved by: Kobzol
Pushing 70e2b4a to master...

@bors bors added the merged-by-bors This PR was explicitly merged by bors. label Jun 19, 2025
@bors bors merged commit 70e2b4a into rust-lang:master Jun 19, 2025
11 checks passed
@rustbot rustbot added this to the 1.89.0 milestone Jun 19, 2025
@jieyouxu jieyouxu deleted the exp/auto-cross-run-make branch June 19, 2025 09:29
Copy link
Contributor

What is this? This is an experimental post-merge analysis report that shows differences in test outcomes between the merged PR and its parent PR.

Comparing 8a65ee0 (parent) -> 70e2b4a (this PR)

Test differences

Show 112 test diffs

Stage 2

  • [run-make] tests/run-make/embed-metadata: pass -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J0)
  • [run-make] tests/run-make/export/disambiguator: pass -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J0)
  • [run-make] tests/run-make/export/extern-opt: pass -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J0)
  • [run-make] tests/run-make/export/simple: pass -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J0)
  • [run-make] tests/run-make/include-all-symbols-linking: pass -> ignore (skipping test as target does not support all of the crate types ["cdylib"]) (J0)
  • [run-make] tests/run-make/invalid-so: pass -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J0)
  • [run-make] tests/run-make/link-dedup: pass -> ignore (ignored when the target environment is musl ((not passed consecutively))) (J0)
  • [run-make] tests/run-make/proc-macro-three-crates: pass -> ignore (ignored when the target environment is musl ((FIXME: can't find -lunwind))) (J0)
  • [run-make] tests/run-make/rustc-macro-dep-files: pass -> ignore (ignored when the target environment is musl ((FIXME: can't find -lunwind))) (J0)
  • [run-make] tests/run-make/share-generics-dylib: pass -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J0)
  • [run-make] tests/run-make/symbol-visibility: pass -> ignore (skipping test as target does not support all of the crate types ["dylib", "cdylib", "proc-macro"]) (J0)
  • [run-make] tests/run-make/track-path-dep-info: pass -> ignore (ignored when the target environment is musl ((FIXME: can't find -lunwind))) (J0)
  • [run-make] tests/run-make/allow-warnings-cmdline-stability: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/crate-circular-deps-link: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/doctests-merge: pass -> ignore (ignored when cross-compiling ((needs to run doctests))) (J1)
  • [run-make] tests/run-make/doctests-runtool: pass -> ignore (ignored when cross-compiling ((needs to run host tool binary))) (J1)
  • [run-make] tests/run-make/embed-source-dwarf: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/exit-code: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/export-executable-symbols: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/extern-diff-internal-name: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/extern-flag-fun: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/extern-multiple-copies: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/extern-multiple-copies2: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/incr-prev-body-beyond-eof: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/issue-125484-used-dependencies: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/json-error-no-offset: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/linker-warning: pass -> ignore (ignored when cross-compiling ((need to run fake linker))) (J1)
  • [run-make] tests/run-make/moved-src-dir-fingerprint-ice: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/native-lib-alt-naming: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/native-link-modifier-verbatim-linker: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/no-builtins-lto: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/non-unicode-in-incremental-dir: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/repr128-dwarf: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/reproducible-build-2: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/rlib-format-packed-bundled-libs-2: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/staticlib-thin-archive: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/stdin-rustc: pass -> ignore (ignored when cross-compiling) (J1)
  • [run-make] tests/run-make/rustdoc-test-args: pass -> ignore (ignored when cross-compiling ((needs to run doctest binary))) (J2)
  • [run-make] tests/run-make/stdin-rustdoc: pass -> ignore (ignored when cross-compiling ((needs to run doctests))) (J2)
  • [run-make] tests/run-make/allow-warnings-cmdline-stability: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/crate-circular-deps-link: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/doctests-merge: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling ((needs to run doctests))) (J3)
  • [run-make] tests/run-make/doctests-runtool: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling ((needs to run host tool binary))) (J3)
  • [run-make] tests/run-make/embed-metadata: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J3)
  • [run-make] tests/run-make/embed-source-dwarf: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/emit-shared-files: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/env-dep-info: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["proc-macro"]) (J3)
  • [run-make] tests/run-make/export-executable-symbols: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/export/extern-opt: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J3)
  • [run-make] tests/run-make/export/simple: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J3)
  • [run-make] tests/run-make/extern-diff-internal-name: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/extern-flag-fun: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/extern-multiple-copies: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/include-all-symbols-linking: ignore (ignored if target does not support std) -> ignore (ignored on targets without dynamic linking) (J3)
  • [run-make] tests/run-make/incr-prev-body-beyond-eof: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/incr-test-moved-file: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/intrinsic-unreachable: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/invalid-so: ignore (ignored if target does not support std) -> ignore (ignored on targets without dynamic linking) (J3)
  • [run-make] tests/run-make/issue-125484-used-dependencies: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/json-error-no-offset: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/linker-warning: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling ((need to run fake linker))) (J3)
  • [run-make] tests/run-make/native-lib-alt-naming: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/native-link-modifier-verbatim-linker: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/no-builtins-lto: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/non-unicode-in-incremental-dir: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/proc-macro-three-crates: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["proc-macro"]) (J3)
  • [run-make] tests/run-make/repr128-dwarf: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/reproducible-build-2: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/rlib-format-packed-bundled-libs-2: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/rustc-macro-dep-files: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["proc-macro"]) (J3)
  • [run-make] tests/run-make/rustdoc-dep-info: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-determinism: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-error-lines: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-io-error: ignore (ignored when the architecture is arm) -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-map-file: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-output-path: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-themes: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-verify-output-files: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-with-out-dir-option: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/rustdoc-with-output-option: pass -> ignore (ignored if target does not support std) (J3)
  • [run-make] tests/run-make/share-generics-dylib: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J3)
  • [run-make] tests/run-make/staticlib-thin-archive: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/stdin-rustc: ignore (ignored if target does not support std) -> ignore (ignored when cross-compiling) (J3)
  • [run-make] tests/run-make/symbol-visibility: ignore (ignored if target does not support std) -> ignore (ignored on targets without dynamic linking) (J3)
  • [run-make] tests/run-make/track-path-dep-info: ignore (ignored if target does not support std) -> ignore (skipping test as target does not support all of the crate types ["proc-macro"]) (J3)
  • [run-make] tests/run-make/embed-metadata: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/env-dep-info: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/export/extern-opt: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/export/simple: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/include-all-symbols-linking: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/proc-macro-three-crates: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/rustc-macro-dep-files: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/symbol-visibility: pass -> ignore (ignored when cross-compiling) (J4)
  • [run-make] tests/run-make/relro-levels: pass -> ignore (ignored when cross-compiling) (J5)
  • [run-make] tests/run-make/emit-stack-sizes: ignore (ignored when the operating system is windows) -> ignore (only executed when the target binary format is ELF) (J6)
  • [run-make] tests/run-make/naked-symbol-visibility: ignore (only executed when the architecture is x86_64) -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J7)
  • [run-make] tests/run-make/relro-levels: ignore (only executed when the operating system is linux) -> ignore (ignored when cross-compiling) (J8)
  • [run-make] tests/run-make/ice-dep-cannot-find-dep: pass -> ignore (ignored when cross-compiling) (J9)
  • [run-make] tests/run-make/naked-symbol-visibility: pass -> ignore (skipping test as target does not support all of the crate types ["dylib"]) (J9)
  • [run-make] tests/run-make/emit-stack-sizes: ignore (ignored when the target vendor is Apple) -> ignore (only executed when the target binary format is ELF) (J10)

(and 12 additional test diffs)

Job group index

Test dashboard

Run

cargo run --manifest-path src/ci/citool/Cargo.toml -- \
    test-dashboard 70e2b4a4d197f154bed0eb3dcb5cac6a948ff3a3 --output-dir test-dashboard

And then open test-dashboard/index.html in your browser to see an overview of all executed tests.

Job duration changes

  1. mingw-check-tidy: 96.1s -> 70.4s (-26.7%)
  2. x86_64-apple-2: 6645.3s -> 4911.3s (-26.1%)
  3. mingw-check-1: 1980.9s -> 1575.4s (-20.5%)
  4. x86_64-rust-for-linux: 3004.0s -> 2502.4s (-16.7%)
  5. aarch64-gnu-debug: 4148.2s -> 3535.6s (-14.8%)
  6. x86_64-apple-1: 8103.8s -> 6939.8s (-14.4%)
  7. i686-gnu-2: 6336.5s -> 5469.7s (-13.7%)
  8. i686-gnu-1: 8033.2s -> 7034.1s (-12.4%)
  9. x86_64-gnu-llvm-19-1: 3709.9s -> 3253.6s (-12.3%)
  10. x86_64-gnu-llvm-20-1: 3684.1s -> 3249.1s (-11.8%)
How to interpret the job duration changes?

Job durations can vary a lot, based on the actual runner instance
that executed the job, system noise, invalidated caches, etc. The table above is provided
mostly for t-infra members, for simpler debugging of potential CI slow-downs.

@rust-timer
Copy link
Collaborator

Finished benchmarking commit (70e2b4a): comparison URL.

Overall result: no relevant changes - no action needed

@rustbot label: -perf-regression

Instruction count

This benchmark run did not return any relevant results for this metric.

Max RSS (memory usage)

Results (secondary 3.6%)

A less reliable metric. May be of interest, but not used to determine the overall result above.

mean range count
Regressions ❌
(primary)
- - 0
Regressions ❌
(secondary)
3.6% [3.6%, 3.6%] 1
Improvements ✅
(primary)
- - 0
Improvements ✅
(secondary)
- - 0
All ❌✅ (primary) - - 0

Cycles

This benchmark run did not return any relevant results for this metric.

Binary size

This benchmark run did not return any relevant results for this metric.

Bootstrap: 692.997s -> 691.846s (-0.17%)
Artifact size: 372.00 MiB -> 372.01 MiB (0.00%)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-run-make Area: port run-make Makefiles to rmake.rs merged-by-bors This PR was explicitly merged by bors. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-compiler Relevant to the compiler team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

8 participants