/// <summary> /// Gets the register that contains a variable with a location /// type of <c>VLT_REGISTER</c>, and the base register for a /// variable with a location type of <c>VLT_REGISTER_RELATIVE</c>. /// </summary> /// <param name="register"> /// A <c>CorDebugRegister</c> enumeration value that indicates the /// register for a variable with a location type of <c>VLT_REGISTER</c>, /// and the base register for a variable with a location type of /// <c>VLT_REGISTER_RELATIVE</c>. /// </param> /// <returns> /// The method returns the following values: /// /// - <c>S_OK</c>: The variable is in the register indicated by the /// <c>register</c> argument. /// /// - <c>E_FAIL</c>: The variable is not in a register or a /// register-relative location. /// </returns> public int GetRegister(out CorDebugRegister register) { fixed(void *pRegister = ®ister) { return(Calli(_this, This[0]->GetRegister, pRegister)); } }
public ICorDebugValue GetLocalMemoryRegisterValue(ulong highWordAddress, CorDebugRegister lowWordRegister, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; Interop.CorDebug.ICorDebugValue out_ppValue; this.WrappedObject.GetLocalMemoryRegisterValue(highWordAddress, ((Interop.CorDebug.CorDebugRegister)(lowWordRegister)), cbSigBlob, pvSigBlob, out out_ppValue); ppValue = ICorDebugValue.Wrap(out_ppValue); return(ppValue); }
public ICorDebugValue GetLocalRegisterMemoryValue(CorDebugRegister highWordReg, ulong lowWordAddress, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; Interop.CorDebug.ICorDebugValue out_ppValue; this.WrappedObject.GetLocalRegisterMemoryValue(((Interop.CorDebug.CorDebugRegister)(highWordReg)), lowWordAddress, cbSigBlob, pvSigBlob, out out_ppValue); ppValue = ICorDebugValue.Wrap(out_ppValue); return(ppValue); }
public ICorDebugValue GetLocalDoubleRegisterValue(CorDebugRegister highWordReg, CorDebugRegister lowWordReg, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; Interop.CorDebug.ICorDebugValue out_ppValue; this.WrappedObject.GetLocalDoubleRegisterValue(((Interop.CorDebug.CorDebugRegister)(highWordReg)), ((Interop.CorDebug.CorDebugRegister)(lowWordReg)), cbSigBlob, pvSigBlob, out out_ppValue); ppValue = ICorDebugValue.Wrap(out_ppValue); return(ppValue); }
public ICorDebugValue GetLocalRegisterValue(CorDebugRegister reg, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; Interop.CorDebug.ICorDebugValue out_ppValue; this.WrappedObject.GetLocalRegisterValue(((Interop.CorDebug.CorDebugRegister)(reg)), cbSigBlob, pvSigBlob, out out_ppValue); ppValue = ICorDebugValue.Wrap(out_ppValue); return(ppValue); }
public static ICorDebugValue GetLocalRegisterValue(this ICorDebugNativeFrame instance, CorDebugRegister reg, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; instance.__GetLocalRegisterValue(reg, cbSigBlob, pvSigBlob, out ppValue); return ppValue; }
static bool TryGetRegisterX86(DbgMachine machine, CorDebugRegister corReg, out X86Register register) { switch (machine) { case DbgMachine.X86: switch (corReg) { case CorDebugRegister.REGISTER_X86_EIP: register = X86Register.EIP; return(true); case CorDebugRegister.REGISTER_X86_ESP: register = X86Register.ESP; return(true); case CorDebugRegister.REGISTER_X86_EBP: register = X86Register.EBP; return(true); case CorDebugRegister.REGISTER_X86_EAX: register = X86Register.EAX; return(true); case CorDebugRegister.REGISTER_X86_ECX: register = X86Register.ECX; return(true); case CorDebugRegister.REGISTER_X86_EDX: register = X86Register.EDX; return(true); case CorDebugRegister.REGISTER_X86_EBX: register = X86Register.EBX; return(true); case CorDebugRegister.REGISTER_X86_ESI: register = X86Register.ESI; return(true); case CorDebugRegister.REGISTER_X86_EDI: register = X86Register.EDI; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_0: register = X86Register.ST0; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_1: register = X86Register.ST1; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_2: register = X86Register.ST2; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_3: register = X86Register.ST3; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_4: register = X86Register.ST4; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_5: register = X86Register.ST5; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_6: register = X86Register.ST6; return(true); case CorDebugRegister.REGISTER_X86_FPSTACK_7: register = X86Register.ST7; return(true); default: Debug.Fail($"Unknown register number {(int)corReg}"); register = default; return(false); } case DbgMachine.X64: switch (corReg) { case CorDebugRegister.REGISTER_AMD64_RIP: register = X86Register.RIP; return(true); case CorDebugRegister.REGISTER_AMD64_RSP: register = X86Register.RSP; return(true); case CorDebugRegister.REGISTER_AMD64_RBP: register = X86Register.RBP; return(true); case CorDebugRegister.REGISTER_AMD64_RAX: register = X86Register.RAX; return(true); case CorDebugRegister.REGISTER_AMD64_RCX: register = X86Register.RCX; return(true); case CorDebugRegister.REGISTER_AMD64_RDX: register = X86Register.RDX; return(true); case CorDebugRegister.REGISTER_AMD64_RBX: register = X86Register.RBX; return(true); case CorDebugRegister.REGISTER_AMD64_RSI: register = X86Register.RSI; return(true); case CorDebugRegister.REGISTER_AMD64_RDI: register = X86Register.RDI; return(true); case CorDebugRegister.REGISTER_AMD64_R8: register = X86Register.R8; return(true); case CorDebugRegister.REGISTER_AMD64_R9: register = X86Register.R9; return(true); case CorDebugRegister.REGISTER_AMD64_R10: register = X86Register.R10; return(true); case CorDebugRegister.REGISTER_AMD64_R11: register = X86Register.R11; return(true); case CorDebugRegister.REGISTER_AMD64_R12: register = X86Register.R12; return(true); case CorDebugRegister.REGISTER_AMD64_R13: register = X86Register.R13; return(true); case CorDebugRegister.REGISTER_AMD64_R14: register = X86Register.R14; return(true); case CorDebugRegister.REGISTER_AMD64_R15: register = X86Register.R15; return(true); case CorDebugRegister.REGISTER_AMD64_XMM0: register = X86Register.XMM0; return(true); case CorDebugRegister.REGISTER_AMD64_XMM1: register = X86Register.XMM1; return(true); case CorDebugRegister.REGISTER_AMD64_XMM2: register = X86Register.XMM2; return(true); case CorDebugRegister.REGISTER_AMD64_XMM3: register = X86Register.XMM3; return(true); case CorDebugRegister.REGISTER_AMD64_XMM4: register = X86Register.XMM4; return(true); case CorDebugRegister.REGISTER_AMD64_XMM5: register = X86Register.XMM5; return(true); case CorDebugRegister.REGISTER_AMD64_XMM6: register = X86Register.XMM6; return(true); case CorDebugRegister.REGISTER_AMD64_XMM7: register = X86Register.XMM7; return(true); case CorDebugRegister.REGISTER_AMD64_XMM8: register = X86Register.XMM8; return(true); case CorDebugRegister.REGISTER_AMD64_XMM9: register = X86Register.XMM9; return(true); case CorDebugRegister.REGISTER_AMD64_XMM10: register = X86Register.XMM10; return(true); case CorDebugRegister.REGISTER_AMD64_XMM11: register = X86Register.XMM11; return(true); case CorDebugRegister.REGISTER_AMD64_XMM12: register = X86Register.XMM12; return(true); case CorDebugRegister.REGISTER_AMD64_XMM13: register = X86Register.XMM13; return(true); case CorDebugRegister.REGISTER_AMD64_XMM14: register = X86Register.XMM14; return(true); case CorDebugRegister.REGISTER_AMD64_XMM15: register = X86Register.XMM15; return(true); default: Debug.Fail($"Unknown register number {(int)corReg}"); register = default; return(false); } case DbgMachine.Arm: case DbgMachine.Arm64: default: Debug.Fail($"Unsupported machine: {machine}"); register = default; return(false); } }
public static ICorDebugValue GetLocalDoubleRegisterValue(this ICorDebugNativeFrame instance, CorDebugRegister highWordReg, CorDebugRegister lowWordReg, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; instance.__GetLocalDoubleRegisterValue(highWordReg, lowWordReg, cbSigBlob, pvSigBlob, out ppValue); return ppValue; }
public static ICorDebugValue GetLocalRegisterMemoryValue(this ICorDebugNativeFrame instance, CorDebugRegister highWordReg, ulong lowWordAddress, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; instance.__GetLocalRegisterMemoryValue(highWordReg, lowWordAddress, cbSigBlob, pvSigBlob, out ppValue); return ppValue; }
int ICorDebugNativeFrame.GetLocalDoubleRegisterValue(CorDebugRegister highWordReg, CorDebugRegister lowWordReg, uint cbSigBlob, IntPtr pvSigBlob, out ICorDebugValue ppValue) { Debug.Assert(false); ppValue = null; return(COM_HResults.E_NOTIMPL); }
int ICorDebugNativeFrame.GetLocalMemoryRegisterValue(ulong highWordAddress, CorDebugRegister lowWordRegister, uint cbSigBlob, IntPtr pvSigBlob, out ICorDebugValue ppValue) { Debug.Assert(false); ppValue = null; return(COM_HResults.E_NOTIMPL); }
public static ICorDebugValue GetLocalMemoryRegisterValue(this ICorDebugNativeFrame instance, ulong highWordAddress, CorDebugRegister lowWordRegister, uint cbSigBlob, uint pvSigBlob) { ICorDebugValue ppValue; instance.__GetLocalMemoryRegisterValue(highWordAddress, lowWordRegister, cbSigBlob, pvSigBlob, out ppValue); ProcessOutParameter(ppValue); return ppValue; }
int ICorDebugNativeFrame.GetLocalRegisterMemoryValue(CorDebugRegister highWordReg, ulong lowWordAddress, uint cbSigBlob, IntPtr pvSigBlob, out ICorDebugValue ppValue) { Debug.Assert(false); ppValue = null; return(Utility.COM_HResults.E_NOTIMPL); }
int ICorDebugNativeFrame.GetLocalRegisterValue(CorDebugRegister reg, uint cbSigBlob, IntPtr pvSigBlob, out ICorDebugValue ppValue) { Debug.Assert(false); ppValue = null; return(Utility.COM_HResults.E_NOTIMPL); }
int ICorDebugNativeFrame.GetLocalMemoryRegisterValue(ulong highWordAddress, CorDebugRegister lowWordRegister, uint cbSigBlob, IntPtr pvSigBlob, out ICorDebugValue ppValue) { Debug.Assert(false); ppValue = null; return Utility.COM_HResults.E_NOTIMPL; }
int ICorDebugNativeFrame.GetLocalDoubleRegisterValue(CorDebugRegister highWordReg, CorDebugRegister lowWordReg, uint cbSigBlob, IntPtr pvSigBlob, out ICorDebugValue ppValue) { Debug.Assert(false); ppValue = null; return Utility.COM_HResults.E_NOTIMPL; }