From c1eef81fdbcdc18c033ebecbf2da59676f704154 Mon Sep 17 00:00:00 2001 From: ptitSeb Date: Wed, 7 Apr 2021 14:49:56 +0200 Subject: Added 0F DA ocode ([DYNAREC] too) --- src/dynarec/dynarec_arm64_0f.c | 8 +++++++- src/emu/x64run0f.c | 8 +++++++- 2 files changed, 14 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/dynarec/dynarec_arm64_0f.c b/src/dynarec/dynarec_arm64_0f.c index 5d465fb7..be7f194c 100755 --- a/src/dynarec/dynarec_arm64_0f.c +++ b/src/dynarec/dynarec_arm64_0f.c @@ -1341,7 +1341,13 @@ uintptr_t dynarec64_0F(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int nin GETEM(q1, 0); UQSUB_16(q0, q0, q1); break; - + case 0xDA: + INST_NAME("PMINUB Gm, Em"); + nextop = F8; + GETGM(d0); + GETEM(d1, 0); + UMIN_8(d0, d0, d1); + break; case 0xDB: INST_NAME("PAND Gm, Em"); nextop = F8; diff --git a/src/emu/x64run0f.c b/src/emu/x64run0f.c index 6037f073..6ac0f0a6 100644 --- a/src/emu/x64run0f.c +++ b/src/emu/x64run0f.c @@ -1276,7 +1276,13 @@ int Run0F(x64emu_t *emu, rex_t rex) GM->uw[i] = (tmp32s < 0) ? 0 : tmp32s; } break; - + case 0xDA: /* PMINUB Gm,Em */ + nextop = F8; + GETEM(0); + GETGM; + for (int i=0; i<8; ++i) + GM->ub[i] = (GM->ub[i]ub[i])?GM->ub[i]:EM->ub[i]; + break; case 0xDB: /* PAND Gm,Em */ nextop = F8; GETEM(0); -- cgit 1.4.1