new_dynarec: Do not jump to jump_vaddr_x18 on arm64

This commit is contained in:
Gillou68310 2019-01-20 14:35:49 +01:00
parent be39dfe390
commit 6a4acbb5dd

View File

@ -7490,6 +7490,13 @@ static void pagespan_ds(void)
intptr_t branch=(intptr_t)out;
emit_jeq(0);
store_regs_bt(regs[0].regmap,regs[0].is32,regs[0].dirty,-1);
#if NEW_DYNAREC==NEW_DYNAREC_ARM64
if(btaddr==18) {
// x18 is used for trampoline jumps, move it to another register (x0)
emit_mov(btaddr,0);
btaddr=0;
}
#endif
emit_jmp(jump_vaddr_reg[btaddr]);
set_jump_target(branch,(intptr_t)out);
store_regs_bt(regs[0].regmap,regs[0].is32,regs[0].dirty,start+4);