Uh oh!
There was an error while loading. Please reload this page.
[cdac] Begin adding MethodDesc APIs to the RuntimeTypeSystem contract - #104811
Conversation
Tagging subscribers to this area: @tommcdon |
mock the additional data and globals
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
| { | ||
| // may throw if the method desc at methodDescPointer is corrupted | ||
| // we bypass the target data cache here because we don't want to cache non-validated data | ||
| Data.MethodDesc desc = new Data.MethodDesc(_target, methodDescPointer); |
There was a problem hiding this comment.
For the existing non-validated types, we only read the parts that are needed to do the validation. For this, we're always going to read everything on MethodDesc/MethodDescChunk - are we expecting to need most of it / do we care about trying to read only what is needed?
There was a problem hiding this comment.
I think we're going to need to access most of the fields of the MethodDesc base class for validation: you have to compute the MethodDescChunk address right away, and after that the first check is looking at the flags and the slot.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Elinor Fung <elfung@microsoft.com>
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Elinor Fung <elfung@microsoft.com>
Contributes to #99302
This is largely a placeholder just to get the MethodDesc/MethodDescChunk infrastructure in place. To further fill out
ValidateMethodDescand to implement theGetMethodDescDataDAC API, I also need to add an executable code manager contract for mapping between native code pointer values and methods. I'd like to do that as a separate PR.Debugged WinDbg enough to verify that
GetMethodDescDatais implemented enough to extract the correct MethodTable pointer value from a MethodDesc.