summaryrefslogtreecommitdiff
path: root/src/debug/ee/debugger.inl
diff options
context:
space:
mode:
authorJonghyun Park <parjong@gmail.com>2017-02-02 18:41:46 +0900
committerJan Vorlicek <janvorli@microsoft.com>2017-02-02 10:41:46 +0100
commit009c70f81d2899848ea254fd39969de91fd33519 (patch)
treecf727ddb11225065815d12c30fae91362b0a9c9f /src/debug/ee/debugger.inl
parentef36ea764e445c2c0665784749d1fd48ecd657c8 (diff)
downloadcoreclr-009c70f81d2899848ea254fd39969de91fd33519.tar.gz
coreclr-009c70f81d2899848ea254fd39969de91fd33519.tar.bz2
coreclr-009c70f81d2899848ea254fd39969de91fd33519.zip
[x86/Linux] Do NOT use pXXX fields (#9121)
* [x86/Linux] Do NOT use pXXX fields * Fix x86/Windows build error * Fix another x86/Windows build error * Fix typo * Do NOT trash EBP * Reflect the original semantics of EHContext::UpdateFrame * Unify ReadXXX/LocateXXX into GetXXXLocation, and RestoreXXX/TrashXXX into SetXXXLocation * Revert the order of pXXX fields * Revise cgenx86.cpp * Revert unnecessary changes * Remove direct accesses to CALLEE_SAVED_REGISTERS_TAG * Do NOT update pCurrentContext inside SetXXXLocation * Update RegPtr via offset * Unify REG_METHODS (and revise UpdateRegDisplay methods accordingly) * Revise per feedback * Fix x86/Windows build error
Diffstat (limited to 'src/debug/ee/debugger.inl')
-rw-r--r--src/debug/ee/debugger.inl14
1 files changed, 7 insertions, 7 deletions
diff --git a/src/debug/ee/debugger.inl b/src/debug/ee/debugger.inl
index 54ac8b9316..57372868c0 100644
--- a/src/debug/ee/debugger.inl
+++ b/src/debug/ee/debugger.inl
@@ -235,13 +235,13 @@ inline void FuncEvalFrame::UpdateRegDisplay(const PREGDISPLAY pRD)
// Update all registers in the reg display from the CONTEXT we stored when the thread was hijacked for this func
// eval. We have to update all registers, not just the callee saved registers, because we can hijack a thread at any
// point for a func eval, not just at a call site.
- pRD->pEdi = &(pDE->m_context.Edi);
- pRD->pEsi = &(pDE->m_context.Esi);
- pRD->pEbx = &(pDE->m_context.Ebx);
- pRD->pEdx = &(pDE->m_context.Edx);
- pRD->pEcx = &(pDE->m_context.Ecx);
- pRD->pEax = &(pDE->m_context.Eax);
- pRD->pEbp = &(pDE->m_context.Ebp);
+ pRD->SetEdiLocation(&(pDE->m_context.Edi));
+ pRD->SetEsiLocation(&(pDE->m_context.Esi));
+ pRD->SetEbxLocation(&(pDE->m_context.Ebx));
+ pRD->SetEdxLocation(&(pDE->m_context.Edx));
+ pRD->SetEcxLocation(&(pDE->m_context.Ecx));
+ pRD->SetEaxLocation(&(pDE->m_context.Eax));
+ pRD->SetEbpLocation(&(pDE->m_context.Ebp));
pRD->SP = (DWORD)GetSP(&pDE->m_context);
pRD->PCTAddr = GetReturnAddressPtr();
pRD->ControlPC = *PTR_PCODE(pRD->PCTAddr);