{a32,a64}_emit_x64_memory: Zero extension paranoia
This commit is contained in:
parent
0fd32c5fa4
commit
316b95bb3f
2 changed files with 6 additions and 0 deletions
|
@ -85,6 +85,7 @@ void A32EmitX64::GenFastmemFallbacks() {
|
||||||
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
code.ZeroExtendFrom(bitsize, code.ABI_PARAM3);
|
||||||
callback.EmitCall(code);
|
callback.EmitCall(code);
|
||||||
ABI_PopCallerSaveRegistersAndAdjustStack(code);
|
ABI_PopCallerSaveRegistersAndAdjustStack(code);
|
||||||
code.ret();
|
code.ret();
|
||||||
|
@ -110,7 +111,9 @@ void A32EmitX64::GenFastmemFallbacks() {
|
||||||
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
code.ZeroExtendFrom(bitsize, code.ABI_PARAM3);
|
||||||
code.mov(code.ABI_PARAM4, rax);
|
code.mov(code.ABI_PARAM4, rax);
|
||||||
|
code.ZeroExtendFrom(bitsize, code.ABI_PARAM4);
|
||||||
callback.EmitCall(code);
|
callback.EmitCall(code);
|
||||||
ABI_PopCallerSaveRegistersAndAdjustStackExcept(code, HostLoc::RAX);
|
ABI_PopCallerSaveRegistersAndAdjustStackExcept(code, HostLoc::RAX);
|
||||||
code.ret();
|
code.ret();
|
||||||
|
|
|
@ -227,6 +227,7 @@ void A64EmitX64::GenFastmemFallbacks() {
|
||||||
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
code.ZeroExtendFrom(bitsize, code.ABI_PARAM3);
|
||||||
callback.EmitCall(code);
|
callback.EmitCall(code);
|
||||||
ABI_PopCallerSaveRegistersAndAdjustStack(code);
|
ABI_PopCallerSaveRegistersAndAdjustStack(code);
|
||||||
code.ret();
|
code.ret();
|
||||||
|
@ -252,7 +253,9 @@ void A64EmitX64::GenFastmemFallbacks() {
|
||||||
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
code.mov(code.ABI_PARAM2, Xbyak::Reg64{vaddr_idx});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
code.ZeroExtendFrom(bitsize, code.ABI_PARAM3);
|
||||||
code.mov(code.ABI_PARAM4, rax);
|
code.mov(code.ABI_PARAM4, rax);
|
||||||
|
code.ZeroExtendFrom(bitsize, code.ABI_PARAM4);
|
||||||
callback.EmitCall(code);
|
callback.EmitCall(code);
|
||||||
ABI_PopCallerSaveRegistersAndAdjustStackExcept(code, HostLoc::RAX);
|
ABI_PopCallerSaveRegistersAndAdjustStackExcept(code, HostLoc::RAX);
|
||||||
code.ret();
|
code.ret();
|
||||||
|
|
Loading…
Reference in a new issue