A64: Add Step

Allow for stepping instruction-by-instruction
This commit is contained in:
MerryMage
2020-04-06 15:05:50 +01:00
parent 53e23efcef
commit f69c77391e
11 changed files with 108 additions and 32 deletions

View File

@@ -291,11 +291,11 @@ void A64EmitX64::GenTerminalHandlers() {
// This calculation has to match up with A64::LocationDescriptor::UniqueHash
// TODO: Optimization is available here based on known state of fpcr.
code.mov(rbp, qword[r15 + offsetof(A64JitState, pc)]);
code.mov(rcx, A64::LocationDescriptor::PC_MASK);
code.mov(rcx, A64::LocationDescriptor::pc_mask);
code.and_(rcx, rbp);
code.mov(ebx, dword[r15 + offsetof(A64JitState, fpcr)]);
code.and_(ebx, A64::LocationDescriptor::FPCR_MASK);
code.shl(ebx, 37);
code.and_(ebx, A64::LocationDescriptor::fpcr_mask);
code.shl(ebx, A64::LocationDescriptor::fpcr_shift);
code.or_(rbx, rcx);
};