a64_emit_x64: bug: EmitA64WriteMemory128 should write not read
This commit is contained in:
parent
ab84524806
commit
da3e9a5704
1 changed files with 2 additions and 2 deletions
|
@ -402,8 +402,8 @@ void A64EmitX64::EmitA64WriteMemory128(A64EmitContext& ctx, IR::Inst* inst) {
|
||||||
code->sub(rsp, ABI_SHADOW_SPACE);
|
code->sub(rsp, ABI_SHADOW_SPACE);
|
||||||
code->movaps(code->xword[code->ABI_PARAM3], xmm_value);
|
code->movaps(code->xword[code->ABI_PARAM3], xmm_value);
|
||||||
|
|
||||||
DEVIRT(conf.callbacks, &A64::UserCallbacks::MemoryRead128).EmitCall(code, [&](Xbyak::Reg64 return_value, Xbyak::Reg64 vaddr) {
|
DEVIRT(conf.callbacks, &A64::UserCallbacks::MemoryWrite128).EmitCall(code, [&](Xbyak::Reg64 vaddr, Xbyak::Reg64 value_ptr) {
|
||||||
ASSERT(return_value == code->ABI_PARAM2 && vaddr == code->ABI_PARAM3);
|
ASSERT(vaddr == code->ABI_PARAM2 && value_ptr == code->ABI_PARAM3);
|
||||||
});
|
});
|
||||||
|
|
||||||
code->add(rsp, ABI_SHADOW_SPACE);
|
code->add(rsp, ABI_SHADOW_SPACE);
|
||||||
|
|
Loading…
Reference in a new issue