Debugger: Add interrupt vector CpuStateX8664.
This commit is contained in:
@@ -23,7 +23,8 @@ CpuStateX8664::CpuStateX8664()
|
|||||||
|
|
||||||
CpuStateX8664::CpuStateX8664(const x86_64_debug_cpu_state& state)
|
CpuStateX8664::CpuStateX8664(const x86_64_debug_cpu_state& state)
|
||||||
:
|
:
|
||||||
fSetRegisters()
|
fSetRegisters(),
|
||||||
|
fInterruptVector(0)
|
||||||
{
|
{
|
||||||
SetIntRegister(X86_64_REGISTER_RIP, state.rip);
|
SetIntRegister(X86_64_REGISTER_RIP, state.rip);
|
||||||
SetIntRegister(X86_64_REGISTER_RSP, state.rsp);
|
SetIntRegister(X86_64_REGISTER_RSP, state.rsp);
|
||||||
@@ -48,6 +49,8 @@ CpuStateX8664::CpuStateX8664(const x86_64_debug_cpu_state& state)
|
|||||||
SetIntRegister(X86_64_REGISTER_FS, state.fs);
|
SetIntRegister(X86_64_REGISTER_FS, state.fs);
|
||||||
SetIntRegister(X86_64_REGISTER_GS, state.gs);
|
SetIntRegister(X86_64_REGISTER_GS, state.gs);
|
||||||
SetIntRegister(X86_64_REGISTER_SS, state.ss);
|
SetIntRegister(X86_64_REGISTER_SS, state.ss);
|
||||||
|
|
||||||
|
fInterruptVector = state.vector;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -69,6 +69,9 @@ public:
|
|||||||
virtual bool SetRegisterValue(const Register* reg,
|
virtual bool SetRegisterValue(const Register* reg,
|
||||||
const BVariant& value);
|
const BVariant& value);
|
||||||
|
|
||||||
|
uint64 InterruptVector() const
|
||||||
|
{ return fInterruptVector; }
|
||||||
|
|
||||||
bool IsRegisterSet(int32 index) const;
|
bool IsRegisterSet(int32 index) const;
|
||||||
uint64 IntRegisterValue(int32 index) const;
|
uint64 IntRegisterValue(int32 index) const;
|
||||||
void SetIntRegister(int32 index, uint64 value);
|
void SetIntRegister(int32 index, uint64 value);
|
||||||
@@ -80,6 +83,7 @@ private:
|
|||||||
private:
|
private:
|
||||||
uint64 fIntRegisters[X86_64_REGISTER_COUNT];
|
uint64 fIntRegisters[X86_64_REGISTER_COUNT];
|
||||||
RegisterBitSet fSetRegisters;
|
RegisterBitSet fSetRegisters;
|
||||||
|
uint64 fInterruptVector;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user