diff options
| author | Yang Liu <liuyang22@iscas.ac.cn> | 2024-12-23 18:32:35 +0800 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-12-23 11:32:35 +0100 |
| commit | 946da430388786a8237e2e7d17c7c2535246963f (patch) | |
| tree | 6a7d20e47af8797c4a5a93dea6b26b6cc6191f4f /src | |
| parent | cad9450e16a0c145d49a66b275b091db4e8d1308 (diff) | |
| download | box64-946da430388786a8237e2e7d17c7c2535246963f.tar.gz box64-946da430388786a8237e2e7d17c7c2535246963f.zip | |
[LA64_DYNAREC] Fixed some LBT path issues (#2193)
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynarec/la64/dynarec_la64_emit_math.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/dynarec/la64/dynarec_la64_emit_math.c b/src/dynarec/la64/dynarec_la64_emit_math.c index 56c38b8d..bcee5e81 100644 --- a/src/dynarec/la64/dynarec_la64_emit_math.c +++ b/src/dynarec/la64/dynarec_la64_emit_math.c @@ -853,7 +853,7 @@ void emit_sbb32(dynarec_la64_t* dyn, int ninst, rex_t rex, int s1, int s2, int s X64_SBC_W(s1, s2); } MVxw(s1, s3); - + if (!rex.w) ZEROUP(s1); IFX (X_PEND) SDxw(s1, xEmu, offsetof(x64emu_t, res)); return; @@ -1212,6 +1212,7 @@ void emit_adc32(dynarec_la64_t* dyn, int ninst, rex_t rex, int s1, int s2, int s X64_ADC_W(s1, s2); } MV(s1, s3); + if (!rex.w) ZEROUP(s1); IFX (X_PEND) { SDxw(s1, xEmu, offsetof(x64emu_t, res)); } |