Skip to content

MC/DC Coverage re-introduction (2/3): MIR instrumentation - #161223

Open
RenjiSann wants to merge 9 commits into
rust-lang:mainfrom
RenjiSann:mcdc-step-mir
Open

MC/DC Coverage re-introduction (2/3): MIR instrumentation#161223
RenjiSann wants to merge 9 commits into
rust-lang:mainfrom
RenjiSann:mcdc-step-mir

Conversation

@RenjiSann

@RenjiSann RenjiSann commented Aug 17, 2026

Copy link
Copy Markdown
Contributor

Follow-up of #161222

Tracking issue: rust-lang/goals#638

  1. Create MC/DC coverage mappings to provide them to LLVM
  2. Determine the number of possible test vectors within each decision, and deduce the required size of the MC/DC bitmap.
  3. Instrument MIR to track the status of ongoing decision evaluation in temporary variables, and save test vectors to the bitmap

A documentation comment lives in compiler/rustc_mir_transform/src/coverage/mcdc.rs to give implementation details.

r? @davidtwco

@rustbot

rustbot commented Aug 17, 2026

Copy link
Copy Markdown
Collaborator

Some changes occurred in coverage instrumentation.

cc @Zalathar

Some changes occurred in coverage instrumentation.

cc @Zalathar

Some changes occurred to MIR optimizations

cc @rust-lang/wg-mir-opt

Some changes occurred in coverage instrumentation.

cc @Zalathar

Some changes occurred in coverage instrumentation.

cc @Zalathar

Some changes occurred in match lowering

cc @Nadrieril

@rustbot rustbot added A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. 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 Aug 17, 2026
@rust-log-analyzer

This comment has been minimized.

@RenjiSann
RenjiSann force-pushed the mcdc-step-mir branch 2 times, most recently from 8be3400 to 2c05858 Compare August 17, 2026 10:09
@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-log-analyzer

This comment has been minimized.

@rust-bors

rust-bors Bot commented Aug 30, 2026

Copy link
Copy Markdown
Contributor

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

A-LLVM Area: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues. 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.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants