summaryrefslogtreecommitdiff
path: root/Source/Core/Common
diff options
context:
space:
mode:
authorskidau <skidau@gmail.com>2010-03-24 20:27:09 +0000
committerskidau <skidau@gmail.com>2010-03-24 20:27:09 +0000
commit5ff07aace65f852620e6cba6dce8ce9d8a8470e6 (patch)
tree081bfbdd1e5d96f2aef5481688e259ca749b4265 /Source/Core/Common
parent095f81e2f91844fe697f48d6bffd1f9476190f0e (diff)
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
Diffstat (limited to 'Source/Core/Common')
-rw-r--r--Source/Core/Common/Src/ABI.cpp8
1 files 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);
}