IDkmNativeSymbolProviderCallback120a.GetSteppingNativeInstructionMetadata Method
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Called by the native DM to fetch data about an instruction which is used to decide how this instruction should be stepped.
public:
Microsoft::VisualStudio::Debugger::Native::DkmNativeAddressMetadata ^ GetSteppingNativeInstructionMetadata(Microsoft::VisualStudio::Debugger::Native::DkmNativeInstructionSymbol ^ nativeInstruction, Microsoft::VisualStudio::Debugger::DkmModuleInstance ^ moduleInstance, Microsoft::VisualStudio::Debugger::DkmInstructionAddress ^ stepStartingAddress);
public Microsoft.VisualStudio.Debugger.Native.DkmNativeAddressMetadata GetSteppingNativeInstructionMetadata (Microsoft.VisualStudio.Debugger.Native.DkmNativeInstructionSymbol nativeInstruction, Microsoft.VisualStudio.Debugger.DkmModuleInstance moduleInstance, Microsoft.VisualStudio.Debugger.DkmInstructionAddress stepStartingAddress);
public Microsoft.VisualStudio.Debugger.Native.DkmNativeAddressMetadata? GetSteppingNativeInstructionMetadata (Microsoft.VisualStudio.Debugger.Native.DkmNativeInstructionSymbol nativeInstruction, Microsoft.VisualStudio.Debugger.DkmModuleInstance moduleInstance, Microsoft.VisualStudio.Debugger.DkmInstructionAddress? stepStartingAddress);
abstract member GetSteppingNativeInstructionMetadata : Microsoft.VisualStudio.Debugger.Native.DkmNativeInstructionSymbol * Microsoft.VisualStudio.Debugger.DkmModuleInstance * Microsoft.VisualStudio.Debugger.DkmInstructionAddress -> Microsoft.VisualStudio.Debugger.Native.DkmNativeAddressMetadata
Public Function GetSteppingNativeInstructionMetadata (nativeInstruction As DkmNativeInstructionSymbol, moduleInstance As DkmModuleInstance, stepStartingAddress As DkmInstructionAddress) As DkmNativeAddressMetadata
Parameters
- nativeInstruction
- DkmNativeInstructionSymbol
[In] DkmNativeInstructionSymbol represents a native instruction within a module of the target process. DkmNativeInstructionSymbol are 1:1 with the underlying native instructions. So if there are two template instantiations of a method (ex: MyMethod<CString> and MyMethod<int>) if the linker merges the two instantiations into a single function through COMDAT folding then the methods will be identical. If the linker isn't able to merge the two instantiations then both user-level functions will appear as one DkmNativeInstructionSymbol.
- moduleInstance
- DkmModuleInstance
[In] Module instance which contains the current instruction symbol.
- stepStartingAddress
- DkmInstructionAddress
[In,Optional] Instruction where the step began. May be null in unusual situations, such as beginning the step with no frames on the stack. Note that this is not necessarily a native instruction.
Returns
[Out,Optional] DkmNativeAddressMetadata represents symbol based metadata about addresses. This includes if the address is a thunk, a prolog, or a trampoline.