-
Notifications
You must be signed in to change notification settings - Fork 5.3k
Fix ASG struct (copy) with different src and dst sizes after global morph.
#39137
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
Conversation
|
PTAL @dotnet/jit-contrib |
|
Would strongly recommend not enabling this for minopts, so we have a way users can work around this if issues arise. If you think it is beneficial for Tier0, we can consider enabling as part of #9120. Also would like to see some more widespread testing of WPF. |
Ok, I will disable this for minopts. However, we have only one check for
In general or in this PR? I have checked other scenarios similar to what was causing the issue, like copying a primitive and copying size that doesn't match field/struct sizes, but they did not show any new issues. |
This is a bad precedent. We really should back off on those optimizations as well. If we think they're generally safe and TP improvements we can enable them in Tier0 too.
I'm mostly concerned about properly handling the variety of pinvokes and struct marshalls that run as part as WPF, and also more thorough testing of C++/CLI created IL that also is used there. I'd prefer it be part of this PR. Since this will be manual testing, we should also write up how to do it in case we want to run it again. |
I have added the check for
Unfortunately, it did not happen. Still I think it is safer to get this change in Prev8 and get testing from WPF there than in RC1. |
CarolEidt
left a comment
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.
The changes LGTM, and I would agree with @AndyAyersMS that the transformation should be disabled for minopts.
AndyAyersMS
left a comment
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.
I have pinged the WPF contributors and haven't heard back. Let's keep trying to work up some plan for doing better WPF testing.
cc @mangod9
Fixes #39128 and adds IL test back (the issue was in using i8 instead of inative on x86).
I want to keep the transformation enabled for minopts, I think it is not dangerous after this fix and could give us better TP (logic for storeind is smaller in codegen), but I have not measured.