-
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
Rollup of 7 pull requests #125732
Rollup of 7 pull requests #125732
Conversation
Signed-off-by: Alice Ryhl <[email protected]>
For coverage tests, splitting code across multiple lines often makes the resulting coverage report easier to interpret, so we force rustfmt to retain line breaks by adding dummy line comments with `//`.
Currently we can't automatically enforce formatting on tests (see rust-lang#125637), but we can at least keep things relatively tidy by occasionally running the formatter manually. This was done by temporarily commenting out the `"/tests/"` exclusion in `rustfmt.toml`, and then running `x fmt tests/coverage` and `x test coverage --bless`.
If we perform this subtraction and then add 1, the subtraction can sometimes overflow to -1 before the addition can bring its value back to 0. That behaviour seems to be benign, but it nevertheless causes test failures in compiler configurations that check for overflow. We can avoid the overflow by instead subtracting (N - 1), which is algebraically equivalent, and more closely matches what the code is actually trying to do.
This moves a few hundred lines of coverage-specific code out of the main module, making navigation a bit easier.
Add `-Zfixed-x18` This PR is a follow-up to rust-lang#124323 that proposes a different implementation. Please read the description of that PR for motivation. See the equivalent flag in [the clang docs](https://clang.llvm.org/docs/ClangCommandLineReference.html#cmdoption-clang-ffixed-x18). MCP: rust-lang/compiler-team#748 Fixes rust-lang#121970 r? rust-lang/compiler
Format all source files in `tests/coverage/` Currently we can't automatically enforce formatting on tests (see rust-lang#125637), but we can at least keep things relatively tidy by occasionally running the formatter manually. This was done by temporarily commenting out the `"/tests/"` exclusion in `rustfmt.toml`, and then running: - `x fmt tests/coverage` - `x test coverage --bless` (This PR also includes a few cosmetic tweaks to some of the affected files, to convince rustfmt to format them in the way we want.) ``@rustbot`` label +A-code-coverage
…cote coverage: Avoid overflow when the MC/DC condition limit is exceeded Fix for the test failure seen in rust-lang#124571 (comment). If we perform this subtraction first, it can sometimes overflow to -1 before the addition can bring its value back to 0. That behaviour seems to be benign, but it nevertheless causes test failures in compiler configurations that check for overflow. ``@rustbot`` label +A-code-coverage
…r-errors Reintroduce name resolution check for trying to access locals from an inline const fixes rust-lang#125676 I removed this without replacement in rust-lang#124650 without considering the consequences
tier 3 target policy: clarify the point about producing assembly I think that is already the intended meaning of the policy, but I am not sure. Cc ``@rust-lang/compiler``
remove unneeded extern crate in rmake test Cleanup requested in rust-lang#125493 (comment) r? jieyouxu ``@bors`` rollup=always
Extract coverage-specific code out of `compiletest::runtest` I had been vaguely intending to do this for a while, but seeing rust-lang#89475 on the compiletest dashboard inspired me to actually go and do it. This moves a few hundred lines of coverage-specific code out of the main module, making navigation a bit easier. There is still a small amount of coverage-specific logic in broader functions in that module, since it can't easily be moved. This is just cut-and-paste plus fixing visibility and imports, so no functional changes. I also removed the unit test for anonymizing line numbers in MC/DC reports, as foreshadowed by the comment I wrote when adding it. That functionality is now adequately exercised by the actual snapshot tests for MC/DC coverage. (Removing the test now avoids the need to move it, or to make the function it calls visible.)
@bors r+ rollup=never p=7 |
☀️ Test successful - checks-actions |
📌 Perf builds for each rolled up PR:
previous master: e9b7aa08f7 In the case of a perf regression, run the following command for each PR you suspect might be the cause: |
Finished benchmarking commit (debd22d): 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 (secondary 2.9%)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.
CyclesThis benchmark run did not return any relevant results for this metric. Binary sizeThis benchmark run did not return any relevant results for this metric. Bootstrap: 667.139s -> 666.699s (-0.07%) |
Successful merges:
-Zfixed-x18
#124655 (Add-Zfixed-x18
)tests/coverage/
#125693 (Format all source files intests/coverage/
)compiletest::runtest
#125719 (Extract coverage-specific code out ofcompiletest::runtest
)r? @ghost
@rustbot modify labels: rollup
Create a similar rollup