diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2023-03-12 16:16:34 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2023-03-12 16:16:34 +0100 |
| commit | 216e70756cb1fdaf064c9d11fe205c7c62ee63d5 (patch) | |
| tree | 5667a2c72c35a6c916c5ec32df25f4a6e07df4c6 /src | |
| parent | 5a52922cd2b9033f6f38ea1cbc78058cf6780cf5 (diff) | |
| download | box64-216e70756cb1fdaf064c9d11fe205c7c62ee63d5.tar.gz box64-216e70756cb1fdaf064c9d11fe205c7c62ee63d5.zip | |
[ARM64_DYNAREC] Added F4 opcode
Diffstat (limited to 'src')
| -rwxr-xr-x | src/dynarec/arm64/dynarec_arm64_00.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_00.c b/src/dynarec/arm64/dynarec_arm64_00.c index 4f327f5b..21b5149f 100755 --- a/src/dynarec/arm64/dynarec_arm64_00.c +++ b/src/dynarec/arm64/dynarec_arm64_00.c @@ -2222,6 +2222,17 @@ uintptr_t dynarec64_00(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin addr = dynarec64_F0(dyn, addr, ip, ninst, rex, rep, ok, need_epilog); break; + case 0xF4: + INST_NAME("HLT"); + SETFLAGS(X_ALL, SF_SET); // Hack to set flags in "don't care" state + GETIP(ip); + STORE_XEMU_CALL(xRIP); + CALL(arm_priv, -1); + LOAD_XEMU_CALL(xRIP); + jump_to_epilog(dyn, 0, xRIP, ninst); + *need_epilog = 0; + *ok = 0; + break; case 0xF5: INST_NAME("CMC"); READFLAGS(X_CF); |