diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2021-03-23 11:30:48 +0100 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2021-03-23 11:30:48 +0100 |
| commit | f88f59926eb6f61a7c71aeea2462681dc78d6cd9 (patch) | |
| tree | 5cdc04eed1a95ad52687dde3e90fbf1612932b2f /src | |
| parent | c9d593fa17916b0a542a801cafa4ea2a0d8c59bc (diff) | |
| download | box64-f88f59926eb6f61a7c71aeea2462681dc78d6cd9.tar.gz box64-f88f59926eb6f61a7c71aeea2462681dc78d6cd9.zip | |
[DYNAREC] Added F3 0F 5D opcode
Diffstat (limited to 'src')
| -rwxr-xr-x | src/dynarec/dynarec_arm64_f30f.c | 11 |
1 files changed, 10 insertions, 1 deletions
diff --git a/src/dynarec/dynarec_arm64_f30f.c b/src/dynarec/dynarec_arm64_f30f.c index 3ff24d0a..a0aa0d7f 100755 --- a/src/dynarec/dynarec_arm64_f30f.c +++ b/src/dynarec/dynarec_arm64_f30f.c @@ -148,7 +148,16 @@ uintptr_t dynarec64_F30F(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int n FSUBS(d1, v0, d0); VMOVeS(v0, 0, d1, 0); break; - + case 0x5D: + INST_NAME("MINSS Gx, Ex"); + nextop = F8; + GETGX(v0); + GETEX(v1, 0); + // MINSS: if any input is NaN, or Ex[0]<Gx[0], copy Ex[0] -> Gx[0] + d0 = fpu_get_scratch(dyn); + FMINNMS(d0, v0, v1); // NaN handling may be slightly different, is that a problem? + VMOVeS(v0, 0, d0, 0); // to not erase uper part + break; case 0x5E: INST_NAME("DIVSS Gx, Ex"); nextop = F8; |