-
Notifications
You must be signed in to change notification settings - Fork 12.5k
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
[Coverage][MCDC] Adapt mcdc to llvm 19 #126733
base: master
Are you sure you want to change the base?
Conversation
rustbot has assigned @compiler-errors. Use |
@rustbot label +A-code-coverage |
This comment has been minimized.
This comment has been minimized.
I think we need to discuss more about mcdc options. Thus now I remove the commit and just reset Nevertheless I would wait until rustc is going to update in-tree llvm 19 and see if there are any other changes need to make. |
☔ The latest upstream changes (presumably #123918) made this pull request unmergeable. Please resolve the merge conflicts. |
☔ The latest upstream changes (presumably #127360) made this pull request unmergeable. Please resolve the merge conflicts. |
1a8d158
to
b09e96e
Compare
Some changes occurred in coverage tests. 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 coverage instrumentation. cc @Zalathar Some changes occurred in coverage instrumentation. cc @Zalathar |
Now this pr is independent from #126677 . We can focus on this only. |
fn take_condition( | ||
fn try_finish_decision( | ||
&mut self, | ||
span: Span, | ||
true_marker: BlockMarkerId, | ||
false_marker: BlockMarkerId, | ||
) -> (Option<ConditionInfo>, Option<MCDCDecisionSpan>) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This change looks a bit awkward. It's just a temporary expedient and will be removed in refactored mcdc implementation for pattern matching.
@bors r+ rollup=iffy |
[Coverage][MCDC] Adapt mcdc to llvm 19 Related issue: rust-lang#126672 Also finish task 4 at rust-lang#124144 [llvm rust-lang#82448](llvm/llvm-project#82448) has introduced some break changes into mcdc, causing incompatibility between llvm 18 and 19. This draft adapts to that change and gives up supporting for llvm-18.
This comment has been minimized.
This comment has been minimized.
💔 Test failed - checks-actions |
3d24cf9
to
ad5a0b3
Compare
😖 Nearly caused an accident, thankfully github is robust enough to restore. Actual diff I have not found a method to generate i16::MAX conditions without proc macros (Manually code so many conditions looks like an attack), so just check if it allows decisions containing more than 6 conditions. |
☔ The latest upstream changes (presumably #130200) made this pull request unmergeable. Please resolve the merge conflicts. |
ad61314
to
3ae3585
Compare
☔ The latest upstream changes (presumably #130357) made this pull request unmergeable. Please resolve the merge conflicts. |
3ae3585
to
3bc3f75
Compare
☔ The latest upstream changes (presumably #130534) made this pull request unmergeable. Please resolve the merge conflicts. |
3bc3f75
to
639d83e
Compare
This comment has been minimized.
This comment has been minimized.
639d83e
to
fb8757d
Compare
Related issue: #126672
Also finish task 4 at #124144
llvm #82448 has introduced some break changes into mcdc, causing incompatibility between llvm 18 and 19. This draft adapts to that change and gives up supporting for llvm-18.