emit_x64: Actually advance RSB pointer

This commit is contained in:
MerryMage 2016-08-24 23:16:34 +01:00
parent eba3a06d80
commit 22cca5ff72

View file

@ -351,6 +351,7 @@ void EmitX64::EmitPushRSB(IR::Block&, IR::Inst* inst) {
: u64(code->GetReturnFromRunCodeAddress()); : u64(code->GetReturnFromRunCodeAddress());
code->MOV(32, R(index_reg), MDisp(R15, offsetof(JitState, rsb_ptr))); code->MOV(32, R(index_reg), MDisp(R15, offsetof(JitState, rsb_ptr)));
code->ADD(32, R(index_reg), Imm8(1));
code->AND(32, R(index_reg), Imm32(JitState::RSBSize - 1)); code->AND(32, R(index_reg), Imm32(JitState::RSBSize - 1));
code->MOV(64, R(loc_desc_reg), Imm64(imm64)); code->MOV(64, R(loc_desc_reg), Imm64(imm64));