Uh oh!
There was an error while loading. Please reload this page.
Enable Mono for using faster invoke stubs - #89108
Conversation
ghost
commented
Jul 18, 2023
Tagging subscribers to this area: @dotnet/area-system-reflection Issue Details[Verifying Tests]
|
just curious - is it possible to avoid boxed |
steveharter
commented
Jul 19, 2023
It's done this way primarily for the interpreted path, which doesn't use emit and is located in the native runtime -- it either needs to be passed a pointer to a nullable or have special logic that creates a nullable from the Also, for both the interpreted path and the various emit paths we also wanted to normalize the |
Uh oh!
There was an error while loading. Please reload this page.
| if (vtype == typeof(IntPtr) || vtype == typeof(UIntPtr)) | ||
| if (vtype == typeof(IntPtr)) | ||
| return CheckValueStatus.Success; | ||
There was a problem hiding this comment.
Thanks for this. With the last commit, it is no longer necessary. Also removed from core CLR.
It was necessary previously since the Opcodes.UnboxAny would throw a InvalidCastException for UIntPtr arguments.
Uh oh!
There was an error while loading. Please reload this page.
Add support for Mono to emit faster invoke stubs for both the new invoke APIs added in #88415 as well as standard invoke.
Replacement for closed issue #88952