Added 67 E8 opcode ([DYNAREC] too) (for #45)

This commit is contained in:
ptitSeb 2021-07-10 08:13:45 +02:00
parent 9a17d9a35e
commit 8b48773176
2 changed files with 10 additions and 0 deletions

View File

@ -157,6 +157,9 @@ uintptr_t dynarec64_67(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin
break; break;
#undef GO #undef GO
case 0xE8:
return dynarec64_00(dyn, addr-1, ip, ninst, rex, rep, ok, need_epilog); // addr-1, to "put back" opcode)
default: default:
DEFAULT; DEFAULT;
} }

View File

@ -29,6 +29,7 @@ int Run67(x64emu_t *emu, rex_t rex, int rep)
int8_t tmp8s; int8_t tmp8s;
uint8_t tmp8u; uint8_t tmp8u;
uint32_t tmp32u; uint32_t tmp32u;
int32_t tmp32s;
uint64_t tmp64u; uint64_t tmp64u;
reg64_t *oped, *opgd; reg64_t *oped, *opgd;
@ -237,6 +238,12 @@ int Run67(x64emu_t *emu, rex_t rex, int rep)
R_RIP += tmp8s; R_RIP += tmp8s;
break; break;
case 0xE8: /* CALL Id */
tmp32s = F32S; // call is relative
Push(emu, R_RIP);
R_RIP += tmp32s;
break;
case 0xF7: /* GRP3 Ed(,Id) */ case 0xF7: /* GRP3 Ed(,Id) */
nextop = F8; nextop = F8;
tmp8u = (nextop>>3)&7; tmp8u = (nextop>>3)&7;