[FAST486]

opgroups.c: We shouldn't restore SP in the opcode handler as that might
interfere with triple faults. Also, in this case it's also wrong because
the exception procedure already restores the stack pointer.
common.c: Fix a comment, no code changes.


svn path=/trunk/; revision=68027
This commit is contained in:
Aleksandar Andrejevic 2015-06-05 20:03:55 +00:00
parent c3834b6428
commit 44d853be5b
2 changed files with 2 additions and 5 deletions

View file

@ -579,7 +579,7 @@ Fast486ExceptionWithErrorCode(PFAST486_STATE State,
/* Restore the IP to the saved IP */
State->InstPtr = State->SavedInstPtr;
/* Restore the SP to the saved SP */
/* Restore the SP to the saved SP */
State->GeneralRegs[FAST486_REG_ESP] = State->SavedStackPtr;
/* Get the interrupt vector */

View file

@ -494,10 +494,7 @@ FAST486_OPCODE_HANDLER(Fast486OpcodeGroup8F)
if (!Fast486ParseModRegRm(State, AddressSize, &ModRegRm))
{
/* Exception occurred - restore SP */
if (OperandSize) State->GeneralRegs[FAST486_REG_ESP].Long -= sizeof(ULONG);
else State->GeneralRegs[FAST486_REG_ESP].LowWord -= sizeof(USHORT);
/* Exception occurred */
return;
}