diff options
Diffstat (limited to 'src/dynarec/la64/dynarec_la64_64.c')
| -rw-r--r-- | src/dynarec/la64/dynarec_la64_64.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/src/dynarec/la64/dynarec_la64_64.c b/src/dynarec/la64/dynarec_la64_64.c index 95d6566e..ae23ab2e 100644 --- a/src/dynarec/la64/dynarec_la64_64.c +++ b/src/dynarec/la64/dynarec_la64_64.c @@ -70,6 +70,15 @@ uintptr_t dynarec64_64(dynarec_la64_t* dyn, uintptr_t addr, uintptr_t ip, int ni GETEDO(x4, 0); emit_add32(dyn, ninst, rex, gd, ed, x3, x4, x5); break; + case 0x2B: + INST_NAME("SUB Gd, Seg:Ed"); + SETFLAGS(X_ALL, SF_SET_PENDING); + grab_segdata(dyn, addr, ninst, x4, seg); + nextop = F8; + GETGD; + GETEDO(x4, 0); + emit_sub32(dyn, ninst, rex, gd, ed, x3, x4, x5); + break; case 0x33: INST_NAME("XOR Gd, Seg:Ed"); SETFLAGS(X_ALL, SF_SET_PENDING); |