diff options
Diffstat (limited to 'src/ARMJIT_A64/ARMJIT_Compiler.h')
-rw-r--r-- | src/ARMJIT_A64/ARMJIT_Compiler.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/ARMJIT_A64/ARMJIT_Compiler.h b/src/ARMJIT_A64/ARMJIT_Compiler.h index d18da93..24e730b 100644 --- a/src/ARMJIT_A64/ARMJIT_Compiler.h +++ b/src/ARMJIT_A64/ARMJIT_Compiler.h @@ -32,6 +32,7 @@ namespace ARMJIT { +const Arm64Gen::ARM64Reg RMemBase = Arm64Gen::X26; const Arm64Gen::ARM64Reg RCPSR = Arm64Gen::W27; const Arm64Gen::ARM64Reg RCycles = Arm64Gen::W28; const Arm64Gen::ARM64Reg RCPU = Arm64Gen::X29; @@ -99,8 +100,8 @@ public: Compiler(); ~Compiler(); - void PushRegs(bool saveHiRegs); - void PopRegs(bool saveHiRegs); + void PushRegs(bool saveHiRegs, bool saveRegsToBeChanged, bool allowUnload = true); + void PopRegs(bool saveHiRegs, bool saveRegsToBeChanged); Arm64Gen::ARM64Reg MapReg(int reg) { @@ -108,7 +109,7 @@ public: return RegCache.Mapping[reg]; } - JitBlockEntry CompileBlock(ARM* cpu, bool thumb, FetchedInstr instrs[], int instrsCount); + JitBlockEntry CompileBlock(ARM* cpu, bool thumb, FetchedInstr instrs[], int instrsCount, bool hasMemInstr); bool CanCompile(bool thumb, u16 kind); |