diff --git a/src/backend_x64/emit_x64.cpp b/src/backend_x64/emit_x64.cpp index 2942576c..507f23f0 100644 --- a/src/backend_x64/emit_x64.cpp +++ b/src/backend_x64/emit_x64.cpp @@ -1540,7 +1540,7 @@ void EmitX64::EmitTerminalLinkBlock(IR::Term::LinkBlock terminal, Arm::LocationD code->CMP(64, MDisp(R15, offsetof(JitState, cycles_remaining)), Imm32(0)); BlockDescriptor* next_bb = GetBasicBlock(terminal.next); - patch_jmp_locations[terminal.next].emplace_back(code->GetWritableCodePtr()); + patch_jg_locations[terminal.next].emplace_back(code->GetWritableCodePtr()); if (next_bb) { code->J_CC(CC_G, next_bb->code_ptr, true); } else { @@ -1569,7 +1569,7 @@ void EmitX64::EmitTerminalIf(IR::Term::If terminal, Arm::LocationDescriptor init void EmitX64::Patch(Arm::LocationDescriptor desc, CodePtr bb) { u8* const save_code_ptr = code->GetWritableCodePtr(); - for (CodePtr location : patch_jmp_locations[desc]) { + for (CodePtr location : patch_jg_locations[desc]) { code->SetCodePtr(const_cast(location)); code->J_CC(CC_G, bb, true); ASSERT(code->GetCodePtr() - location == 6); @@ -1580,7 +1580,7 @@ void EmitX64::Patch(Arm::LocationDescriptor desc, CodePtr bb) { void EmitX64::ClearCache() { basic_blocks.clear(); - patch_jmp_locations.clear(); + patch_jg_locations.clear(); } } // namespace BackendX64 diff --git a/src/backend_x64/emit_x64.h b/src/backend_x64/emit_x64.h index 456b8081..b15f5008 100644 --- a/src/backend_x64/emit_x64.h +++ b/src/backend_x64/emit_x64.h @@ -67,7 +67,7 @@ private: UserCallbacks cb; Jit* jit_interface; std::unordered_map basic_blocks; - std::unordered_map, Arm::LocationDescriptorHash> patch_jmp_locations; + std::unordered_map, Arm::LocationDescriptorHash> patch_jg_locations; }; } // namespace BackendX64