-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Fix crossgen2 calli GC hole by unifying MethodDesc/MethodSignature IsMarshallingRequired logic #58430
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
For unmanaged calli crossgen2 was not properly checking all necessary conditions for a pinvoke being required. In particular it did not check for managed byrefs. Unify the MethodDesc/MethodSignature logic to get all the checks. Fix dotnet#58259
Tagging subscribers to this area: @JulieLeeMSFT Issue DetailsFor unmanaged calli crossgen2 was not properly checking all necessary Fix #58259 cc @dotnet/crossgen-contrib
|
This one should probably be backported to 6.0. |
/azp run runtime-coreclr outerloop |
Azure Pipelines successfully started running 1 pipeline(s). |
/azp run runtime-coreclr outerloop |
Azure Pipelines successfully started running 1 pipeline(s). |
Test failure looks like #58481 |
@davidwrighton and @MichalStrehovsky Please review the code. |
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.
/backport to release/6.0 |
Started backporting to release/6.0: https://github.com/dotnet/runtime/actions/runs/1197309432 |
For unmanaged calli crossgen2 was not properly checking all necessary
conditions for a pinvoke being required. In particular it did not check
for managed byrefs. Unify the MethodDesc/MethodSignature logic to get
all the checks.
Fix #58259
cc @dotnet/crossgen-contrib