From 0d1e4fc4a8c59ccf5f41d9556d3f4383247c0782 Mon Sep 17 00:00:00 2001 From: Merry Date: Wed, 13 Jul 2022 12:23:35 +0100 Subject: [PATCH] a32_emit_x64: Remove use of far code from EmitTerminalImpl LinkBlock --- src/dynarmic/backend/x64/a32_emit_x64.cpp | 7 ------- 1 file changed, 7 deletions(-) diff --git a/src/dynarmic/backend/x64/a32_emit_x64.cpp b/src/dynarmic/backend/x64/a32_emit_x64.cpp index 01ebdeb7..5bbaf25b 100644 --- a/src/dynarmic/backend/x64/a32_emit_x64.cpp +++ b/src/dynarmic/backend/x64/a32_emit_x64.cpp @@ -1173,16 +1173,9 @@ void A32EmitX64::EmitTerminalImpl(IR::Term::LinkBlock terminal, IR::LocationDesc } } - Xbyak::Label dest; - code.jmp(dest, Xbyak::CodeGenerator::T_NEAR); - - code.SwitchToFarCode(); - code.align(16); - code.L(dest); code.mov(MJitStateReg(A32::Reg::PC), A32::LocationDescriptor{terminal.next}.PC()); PushRSBHelper(rax, rbx, terminal.next); code.ForceReturnFromRunCode(); - code.SwitchToNearCode(); } void A32EmitX64::EmitTerminalImpl(IR::Term::LinkBlockFast terminal, IR::LocationDescriptor initial_location, bool is_single_step) {