diff options
Diffstat (limited to 'src/pal/src/arch')
-rw-r--r-- | src/pal/src/arch/amd64/processor.cpp | 2 | ||||
-rw-r--r-- | src/pal/src/arch/i386/asmconstants.h | 1 | ||||
-rw-r--r-- | src/pal/src/arch/i386/context2.S | 3 | ||||
-rw-r--r-- | src/pal/src/arch/i386/exceptionhelper.S | 2 | ||||
-rw-r--r-- | src/pal/src/arch/i386/signalhandlerhelper.cpp | 1 |
5 files changed, 3 insertions, 6 deletions
diff --git a/src/pal/src/arch/amd64/processor.cpp b/src/pal/src/arch/amd64/processor.cpp index 298d685c98..0ab7992286 100644 --- a/src/pal/src/arch/amd64/processor.cpp +++ b/src/pal/src/arch/amd64/processor.cpp @@ -65,7 +65,7 @@ extern "C" unsigned int XmmYmmStateSupport() "end:\n" \ : "=a"(eax) /* output in eax */ \ : /* no inputs */ \ - : "eax", "ebx", "ecx", "edx" /* registers that are clobbered */ + : "ebx", "ecx", "edx" /* registers that are clobbered */ ); // Check OS has enabled both XMM and YMM state support return ((eax & 0x06) == 0x06) ? 1 : 0; diff --git a/src/pal/src/arch/i386/asmconstants.h b/src/pal/src/arch/i386/asmconstants.h index d947cb8bcd..ff763ef16b 100644 --- a/src/pal/src/arch/i386/asmconstants.h +++ b/src/pal/src/arch/i386/asmconstants.h @@ -28,4 +28,3 @@ #define CONTEXT_Xmm5 CONTEXT_Xmm4+16 #define CONTEXT_Xmm6 CONTEXT_Xmm5+16 #define CONTEXT_Xmm7 CONTEXT_Xmm6+16 -#define CONTEXT_ResumeEsp CONTEXT_ExtendedRegisters+512 diff --git a/src/pal/src/arch/i386/context2.S b/src/pal/src/arch/i386/context2.S index 6c31b074cc..cf7581da49 100644 --- a/src/pal/src/arch/i386/context2.S +++ b/src/pal/src/arch/i386/context2.S @@ -42,7 +42,6 @@ LEAF_ENTRY CONTEXT_CaptureContext, _TEXT mov [eax + CONTEXT_Ebp], ebp lea ebx, [esp + 12] mov [eax + CONTEXT_Esp], ebx - mov [eax + CONTEXT_ResumeEsp], ebx mov ebx, [esp + 8] mov [eax + CONTEXT_Eip], ebx @@ -115,7 +114,7 @@ LOCAL_LABEL(Done_Restore_CONTEXT_FLOATING_POINT): LOCAL_LABEL(Done_Restore_CONTEXT_EXTENDED_REGISTERS): // Restore Stack - mov esp, [eax + CONTEXT_ResumeEsp] + mov esp, [eax + CONTEXT_Esp] // Create a minimal frame push DWORD PTR [eax + CONTEXT_Eip] diff --git a/src/pal/src/arch/i386/exceptionhelper.S b/src/pal/src/arch/i386/exceptionhelper.S index bf44124479..b9ceffcc13 100644 --- a/src/pal/src/arch/i386/exceptionhelper.S +++ b/src/pal/src/arch/i386/exceptionhelper.S @@ -23,7 +23,7 @@ LEAF_ENTRY ThrowExceptionFromContextInternal, _TEXT mov eax, [esp + 8] // ebx: CONTEXT * mov ebp, [eax + CONTEXT_Ebp] - mov esp, [eax + CONTEXT_ResumeEsp] + mov esp, [eax + CONTEXT_Esp] mov ebx, [eax + CONTEXT_Ebx] mov esi, [eax + CONTEXT_Esi] mov edi, [eax + CONTEXT_Edi] diff --git a/src/pal/src/arch/i386/signalhandlerhelper.cpp b/src/pal/src/arch/i386/signalhandlerhelper.cpp index 3369abe093..a7d418a788 100644 --- a/src/pal/src/arch/i386/signalhandlerhelper.cpp +++ b/src/pal/src/arch/i386/signalhandlerhelper.cpp @@ -70,7 +70,6 @@ void ExecuteHandlerOnOriginalStack(int code, siginfo_t *siginfo, void *context, // We don't care about the other registers state since the stack unwinding restores // them for the target frame directly from the signal context. context2.Esp = (size_t)sp; - context2.ResumeEsp = (size_t)sp; context2.Ebp = (size_t)fp; context2.Eip = (size_t)signal_handler_worker; |