diff options
| author | Yang Liu <liuyang22@iscas.ac.cn> | 2025-02-09 21:24:12 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2025-02-09 14:24:12 +0100 |
| commit | 751582df057cb4b2453c4ec4f81e25e34aee200e (patch) | |
| tree | 383383c55a4f6a0e68f042cb13f4bee3e9ddc97e /src | |
| parent | 5212de0d6677a50a53333fdb54bb9de460d11f10 (diff) | |
| download | box64-751582df057cb4b2453c4ec4f81e25e34aee200e.tar.gz box64-751582df057cb4b2453c4ec4f81e25e34aee200e.zip | |
[LA64_DYNAREC] Fixed newly added 66 0F BA /4 BT opcode (#2336)
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynarec/la64/dynarec_la64_660f.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/src/dynarec/la64/dynarec_la64_660f.c b/src/dynarec/la64/dynarec_la64_660f.c index 861de379..0094e20c 100644 --- a/src/dynarec/la64/dynarec_la64_660f.c +++ b/src/dynarec/la64/dynarec_la64_660f.c @@ -1464,7 +1464,11 @@ uintptr_t dynarec64_660F(dynarec_la64_t* dyn, uintptr_t addr, uintptr_t ip, int u8 &= rex.w ? 0x3f : 15; IFX (X_CF) { BSTRPICK_D(x3, ed, u8, u8); - BSTRINS_D(xFlags, x3, 0, 0); + if (la64_lbt) { + X64_SET_EFLAGS(x3, X_CF); + } else { + BSTRINS_D(xFlags, x3, F_CF, F_CF); + } } break; default: |