diff options
| author | xctan <xctan@cirno.icu> | 2023-03-20 23:21:11 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2023-03-20 16:21:11 +0100 |
| commit | 7d4b353780d01975fa6ae12d5ad0e0b53bd917ac (patch) | |
| tree | b78cb5efabe3cc4c3d254352b9a0b8b37b0513ea /src | |
| parent | dbede8d6dfd8f8c5bba47f4d27972408863da53f (diff) | |
| download | box64-7d4b353780d01975fa6ae12d5ad0e0b53bd917ac.tar.gz box64-7d4b353780d01975fa6ae12d5ad0e0b53bd917ac.zip | |
[RV64_DYNAREC] Added {21,23} AND opcode (#602)
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynarec/rv64/dynarec_rv64_00.c | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/src/dynarec/rv64/dynarec_rv64_00.c b/src/dynarec/rv64/dynarec_rv64_00.c index 0e7d1ee3..3d8a255e 100644 --- a/src/dynarec/rv64/dynarec_rv64_00.c +++ b/src/dynarec/rv64/dynarec_rv64_00.c @@ -94,6 +94,23 @@ uintptr_t dynarec64_00(dynarec_rv64_t* dyn, uintptr_t addr, uintptr_t ip, int ni DEFAULT; } break; + case 0x21: + INST_NAME("AND Ed, Gd"); + SETFLAGS(X_ALL, SF_SET_PENDING); + nextop = F8; + GETGD; + GETED(0); + emit_and32(dyn, ninst, rex, ed, gd, x3, x4); + WBACK; + break; + case 0x23: + INST_NAME("AND Gd, Ed"); + SETFLAGS(X_ALL, SF_SET_PENDING); + nextop = F8; + GETGD; + GETED(0); + emit_and32(dyn, ninst, rex, gd, ed, x3, x4); + break; case 0x25: INST_NAME("AND EAX, Id"); SETFLAGS(X_ALL, SF_SET_PENDING); |