about summary refs log tree commit diff
path: root/tests/ui/instrument-coverage
AgeCommit message (Collapse)AuthorLines
2025-08-17Rehome tests/ui/issues/ tests [5/?]Oneirical-0/+29
2025-08-06coverage: Remove all unstable support for MC/DC instrumentationZalathar-27/+2
2025-08-04coverage: Remove `-Zcoverage-options=no-mir-spans`Zalathar-1/+1
This flag turned out to be less useful than anticipated, and interferes with work towards expansion support.
2025-04-05Update the minimum external LLVM to 19Josh Stone-1/+0
2025-03-25compiletest: Support matching on diagnostics without a spanVadim Petrochenkov-0/+5
2024-10-08coverage. Adapt to mcdc mapping formats introduced by llvm 19zhuyunxing-20/+4
2024-09-18Update the minimum external LLVM to 18Josh Stone-2/+1
2024-06-21Fix remaining casesMichael Goulet-2/+2
2024-06-17coverage: Add debugging flag `-Zcoverage-options=no-mir-spans`Zalathar-1/+1
When set, this flag skips the code that normally extracts coverage spans from MIR statements and terminators. That sometimes makes it easier to debug branch coverage and MC/DC coverage, because the coverage output is less noisy. For internal debugging only. If other code changes would make it hard to keep supporting this flag, remove it.
2024-06-14Use `-Zno-profiler-runtime` instead of `//@ needs-profiler-support`Zalathar-3/+2
For PGO/coverage tests that don't need to build or run an actual artifact, we can use `-Zno-profiler-runtime` to run the test even when the profiler runtime is not available.
2024-05-31Rollup merge of #125756 - Zalathar:branch-on-bool, r=oli-obkMatthias Krüger-2/+5
coverage: Optionally instrument the RHS of lazy logical operators (This is an updated version of #124644 and #124402. Fixes #124120.) When `||` or `&&` is used outside of a branching context (such as the condition of an `if`), the rightmost value does not directly influence any branching decision, so branch coverage instrumentation does not treat it as its own true-or-false branch. That is a correct and useful interpretation of “branch coverage”, but might be undesirable in some contexts, as described at #124120. This PR therefore adds a new coverage level `-Zcoverage-options=condition` that behaves like branch coverage, but also adds additional branch instrumentation to the right-hand-side of lazy boolean operators. --- As discussed at https://github.com/rust-lang/rust/issues/124120#issuecomment-2092394586, this is mainly intended as an intermediate step towards fully-featured MC/DC instrumentation. It's likely that we'll eventually want to remove this coverage level (rather than stabilize it), either because it has been incorporated into MC/DC instrumentation, or because it's getting in the way of future MC/DC work. The main appeal of landing it now is so that work on tracking conditions can proceed concurrently with other MC/DC-related work. ````@rustbot```` label +A-code-coverage
2024-05-30coverage: Add CLI support for `-Zcoverage-options=condition`Dorian Péron-2/+5
2024-05-30coverage: Rename MC/DC `conditions_num` to `num_conditions`Zalathar-2/+2
This value represents a quantity of conditions, not an ID, so the new spelling is more appropriate.
2024-05-29coverage: Add tests for the MC/DC condition limitZalathar-0/+40
2024-05-09Fix test problems discovered by the revision checkZalathar-1/+1
Most of these changes either add revision names that were apparently missing, or explicitly mark a revision name as currently unused.
2024-05-04tests/ui: prepare some tests for --check-cfg by defaultUrgau-2/+2
2024-04-29coverage: Replace boolean options with a `CoverageLevel` enumZalathar-8/+5
2024-04-19coverage. Add coverage-options=mcdc as gate for MC/DC instrumentzhuyunxing-1/+7
2024-04-07Rename invalid `false` cfg to valid `_false` cfgUrgau-2/+2
While `false` is accepted by `--cfg` it isn't by `#[cfg(false)]` since in that context `false` is the boolean not a ident.
2024-03-13coverage: Add `-Zcoverage-options` for fine control of coverageZalathar-0/+16
This new nightly-only flag can be used to toggle fine-grained flags that control the details of coverage instrumentation. Currently the only supported flag value is `branch` (or `no-branch`), which is a placeholder for upcoming support for branch coverage. Other flag values can be added in the future, to prototype proposed new behaviour, or to enable special non-default behaviour.
2024-03-13coverage: Remove all unstable values of `-Cinstrument-coverage`Zalathar-14/+2
2024-03-06Change the documented implicit value of `-C instrument-coverage` to `=yes`Zalathar-2/+2
2024-02-16[AUTO-GENERATED] Migrate ui tests from `//` to `//@` directives许杰友 Jieyou Xu (Joe)-23/+23
2023-10-25coverage: UI test for unstable value `-C instrument-coverage=branch`Zalathar-6/+8
2023-10-24Introduce `-C instrument-coverage=branch` to gate branch coverageArpad Borsos-4/+4
This flag has to be used in combination with `-Zunstable-options`, and is added in advance of adding branch coverage instrumentation.
2023-10-23coverage: Add UI tests for values accepted by `-Cinstrument-coverage`Zalathar-0/+39