-
Notifications
You must be signed in to change notification settings - Fork 12.7k
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
Run the full stage 2 run-make
test suite in x86_64-gnu-debug
#131917
Conversation
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
[WIP] CI: try to drop `--test-args=clang` in `x86_64-gnu-debug` Ok what if I open a separate PR... r? `@ghost` try-job: x86_64-gnu-debug
This comment has been minimized.
This comment has been minimized.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
[WIP] CI: try to drop `--test-args=clang` in `x86_64-gnu-debug` Ok what if I open a separate PR... r? `@ghost` try-job: x86_64-gnu-debug
This comment has been minimized.
This comment has been minimized.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
[WIP] CI: try to drop `--test-args=clang` in `x86_64-gnu-debug` Ok what if I open a separate PR... r? `@ghost` try-job: x86_64-gnu-debug
This comment was marked as outdated.
This comment was marked as outdated.
This comment has been minimized.
This comment has been minimized.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
This comment was marked as outdated.
[WIP] CI: try to drop `--test-args=clang` in `x86_64-gnu-debug` Ok what if I open a separate PR... r? `@ghost` try-job: x86_64-gnu-debug
This comment has been minimized.
This comment has been minimized.
Full stage 2 build + run-make with full debug info seems to overwhelm the standard 4c runner's storage capacity.
What if we downloaded more |
Run the full stage 2 `run-make` test suite in `x86_64-gnu-debug` Run the full `run-make` test suite in the `x86_64-gnu-debug` CI job. This is currently the *only* CI job where `//@ needs-force-clang-based-test` will be satisfied, so some `run-make` tests will literally never be run otherwise. Before this PR, the CI job only ran `run-make` tests which contains the substring `clang` in its test name, which is both (1) a footgun because it's very easy to forget and (2) it masks tests that would otherwise fail (even failing to compile) because the test is skipped if doesn't have a `clang` in its test name. With the environment of `x86_64-gnu-debug`, two `run-make` tests failed before this PR: 1. `tests/run-make/issue-84395-lto-embed-bitcode/rmake.rs`: this was broken for a long time because `objcopy` in llvm bin tools was renamed to `llvm-objcopy`. This test was converted into a rmake.rs test, rather straight forward. 2. `tests/run-make/cross-lang-lto-riscv-abi/rmake.rs`: this was broken for a long time and never worked. The old version inspected human-readable output of `llvm-readobj --file-header` looking for substring `EF_RISCV_FLOAT_ABI_DOUBLE`, but the human-readable output will only contain something like `Flags: 0x5, RVC, double-float ABI`, hence it will never match. This test was fixed by instead using the `object` crate to actually decode the ELF headers looking for the specific `e_flags` based on reading the RISCV ELF psABI docs. This PR is best reviewed commit-by-commit, two commits setup the support library for functionality and two commits are for each of the failing `run-make` tests. try-job: x86_64-gnu-debug
☀️ Try build successful - checks-actions |
try-job passed, so: @rustbot ready Rolling two reviewers: r? compiler (for tests and basic support lib changes themselves) |
+1 on the runner change. If more disk is needed, we don't really have a lot of other options than to just switch to a larger runner.. |
@Kobzol this doesn't specifically need a compiler reviewer, if you think the tests look reasonable then I think it's fine |
Ok! Nice to see one more makefile test removed. @bors r+ |
☀️ Test successful - checks-actions |
Finished benchmarking commit (b188577): comparison URL. Overall result: no relevant changes - no action needed@rustbot label: -perf-regression Instruction countThis benchmark run did not return any relevant results for this metric. Max RSS (memory usage)Results (primary -0.4%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
CyclesResults (secondary -2.1%)This is a less reliable metric that may be of interest but was not used to determine the overall result at the top of this comment.
Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 788.765s -> 788.853s (0.01%) |
Run the full
run-make
test suite in thex86_64-gnu-debug
CI job. This is currently the only CI job where//@ needs-force-clang-based-test
will be satisfied, so somerun-make
tests will literally never be run otherwise. Before this PR, the CI job only ranrun-make
tests which contains the substringclang
in its test name, which is both (1) a footgun because it's very easy to forget and (2) it masks tests that would otherwise fail (even failing to compile) because the test is skipped if doesn't have aclang
in its test name.With the environment of
x86_64-gnu-debug
, tworun-make
tests failed before this PR:tests/run-make/issue-84395-lto-embed-bitcode/rmake.rs
: this was broken for a long time becauseobjcopy
in llvm bin tools was renamed tollvm-objcopy
. This test was converted into a rmake.rs test, rather straight forward.tests/run-make/cross-lang-lto-riscv-abi/rmake.rs
: this was broken for a long time and never worked. The old version inspected human-readable output ofllvm-readobj --file-header
looking for substringEF_RISCV_FLOAT_ABI_DOUBLE
, but the human-readable output will only contain something likeFlags: 0x5, RVC, double-float ABI
, hence it will never match. This test was fixed by instead using theobject
crate to actually decode the ELF headers looking for the specifice_flags
based on reading the RISCV ELF psABI docs.This PR is best reviewed commit-by-commit, two commits setup the support library for functionality and two commits are for each of the failing
run-make
tests.I had to bump the
x86_64-gnu-debug
job to be ran with a runner with larger disk space.Part of #132034.
try-job: x86_64-gnu-debug