diff options
author | Aaron Giles <aaron@aarongiles.com> | 2008-06-24 04:46:15 +0000 |
---|---|---|
committer | Aaron Giles <aaron@aarongiles.com> | 2008-06-24 04:46:15 +0000 |
commit | 2be66a245ca0bd2e3990a1d997674ddc8b921bf1 (patch) | |
tree | 4238d4058c605fa997afb0643100349516da31d1 /src | |
parent | 6f4b3add14a2a05a85fef910f6895c32a26610e6 (diff) |
Fixed WRITEM opcode on 64-bit to call through memory instead of directly.
Diffstat (limited to 'src')
-rw-r--r-- | src/emu/cpu/drcbex64.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/emu/cpu/drcbex64.c b/src/emu/cpu/drcbex64.c index b153f0767c3..f0de44c2935 100644 --- a/src/emu/cpu/drcbex64.c +++ b/src/emu/cpu/drcbex64.c @@ -4230,13 +4230,13 @@ static x86code *op_writem(drcbe_state *drcbe, x86code *dst, const drcuml_instruc emit_mov_r64_p64(drcbe, &dst, REG_PARAM3, &maskp); // mov param3,maskp } if ((spacesizep.value & 3) == DRCUML_SIZE_WORD) - emit_call(&dst, (x86code *)drcbe->accessors[spacesizep.value / 16].write_word_masked); + emit_smart_call_m64(drcbe, &dst, (x86code **)&drcbe->accessors[spacesizep.value / 16].write_word_masked); // call write_word_masked else if ((spacesizep.value & 3) == DRCUML_SIZE_DWORD) - emit_call(&dst, (x86code *)drcbe->accessors[spacesizep.value / 16].write_dword_masked); + emit_smart_call_m64(drcbe, &dst, (x86code **)&drcbe->accessors[spacesizep.value / 16].write_dword_masked); // call write_dword_masked else if ((spacesizep.value & 3) == DRCUML_SIZE_QWORD) - emit_call(&dst, (x86code *)drcbe->accessors[spacesizep.value / 16].write_qword_masked); + emit_smart_call_m64(drcbe, &dst, (x86code **)&drcbe->accessors[spacesizep.value / 16].write_qword_masked); // call write_qword_masked return dst; } |