From 5ff07aace65f852620e6cba6dce8ce9d8a8470e6 Mon Sep 17 00:00:00 2001 From: skidau Date: Wed, 24 Mar 2010 20:27:09 +0000 Subject: [PATCH] Cleared out the top 16 bits in PARAM1 of the ABI_CallFunctionC16 JIT command. git-svn-id: https://dolphin-emu.googlecode.com/svn/trunk@5232 8ced0084-cf51-0410-be5f-012b33b47a6e --- Source/Core/Common/Src/ABI.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/Source/Core/Common/Src/ABI.cpp b/Source/Core/Common/Src/ABI.cpp index ba471a336f..b6857d79c2 100644 --- a/Source/Core/Common/Src/ABI.cpp +++ b/Source/Core/Common/Src/ABI.cpp @@ -190,14 +190,16 @@ void XEmitter::ABI_RestoreStack(unsigned int frameSize) { // Common functions void XEmitter::ABI_CallFunction(void *func) { // Far call - MOV(64, R(RAX), Imm64((u64)func));CALLptr(R(RAX)); + MOV(64, R(RAX), Imm64((u64)func)); + CALLptr(R(RAX)); //CALL(func); } void XEmitter::ABI_CallFunctionC16(void *func, u16 param1) { - MOV(16, R(ABI_PARAM1), Imm16(param1)); + MOV(32, R(ABI_PARAM1), Imm32((u32)param1)); // Far call - MOV(64, R(RAX), Imm64((u64)func));CALLptr(R(RAX)); + MOV(64, R(RAX), Imm64((u64)func)); + CALLptr(R(RAX)); //CALL(func); }