mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-09-09 11:05:56 +00:00
Finish replacing ThunkManager with ABI_PushRegistersAndAdjustStack.
As part of that, change SafeLoadToEAX to SafeLoadToReg, and have JitIL use that, which should fix fastmem on JitIL. This should also fix a potential stack corruption issue with x86.
This commit is contained in:
parent
a53dc6f981
commit
5e4665301b
37 changed files with 220 additions and 406 deletions
|
@ -646,6 +646,10 @@ public:
|
|||
void ABI_PushAllCalleeSavedRegsAndAdjustStack();
|
||||
void ABI_PopAllCalleeSavedRegsAndAdjustStack();
|
||||
|
||||
// A more flexible version of the above.
|
||||
void ABI_PushRegistersAndAdjustStack(u32 mask, bool noProlog);
|
||||
void ABI_PopRegistersAndAdjustStack(u32 mask, bool noProlog);
|
||||
|
||||
unsigned int ABI_GetAlignedFrameSize(unsigned int frameSize, bool noProlog = false);
|
||||
void ABI_AlignStack(unsigned int frameSize, bool noProlog = false);
|
||||
void ABI_RestoreStack(unsigned int frameSize, bool noProlog = false);
|
||||
|
@ -691,9 +695,6 @@ public:
|
|||
|
||||
#define DECLARE_IMPORT(x) extern "C" void *__imp_##x
|
||||
|
||||
void PushRegistersAndAlignStack(u32 mask);
|
||||
void PopRegistersAndAlignStack(u32 mask);
|
||||
|
||||
#endif
|
||||
}; // class XEmitter
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue