-
Notifications
You must be signed in to change notification settings - Fork 273
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
[TG-1404] Bugfix incomplete coverage in virtual method dispatch #1755
[TG-1404] Bugfix incomplete coverage in virtual method dispatch #1755
Conversation
Could you give an example of what's happening? This sounds like it should amount to the same assumption -- i.e. that we cannot possibly get to this virtual callsite. |
Yes I will try to add some regression tests to this PR
Yes the assumptions are the same. The difference is we don't generate extra blocks for this unreachable callsites. This makes a difference in the reported coverage with |
94d7ac4
to
e1cbc33
Compare
Before block with an assume false was generated. This was leading to report of incomplete coverage. Instead of we generate assumption that the class identifier are different from the non-loaded type all in the same block.
Small variable names changes to make them more descriptive.
e1cbc33
to
f8b5d7d
Compare
@mgudemann This PR and #1731 have some conflicts, so I'm not sure which one should be merged first ? |
@romainbrenguier is this relevant or was it obsoleted by #1830 |
@mgudemann #1830 fixes the bug whose effect we were trying to minimize here so the other PR is more relevant. However this change could still be made, it can remove a few instruction from the goto-programs. I just don't know if it's worth it. |
The main coverage issue is fixed, and this changes are no longer necessary so I'm closing this PR. |
Before this PR block with an assume false was generated.
This was leading to report of incomplete coverage.
Instead of this we generate assumption that the class identifier are
different from the non-loaded type all in the same block.