diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-04-26 18:17:42 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-04-26 18:17:42 +0200 |
| commit | 43d281740778f959f94165386545363591c2f8ea (patch) | |
| tree | cbe4f9c152395ac07dbf6d8c132a503503c78eb5 | |
| parent | ff14ccc0a5475c8148efea715b36a725c342301d (diff) | |
| download | box64-43d281740778f959f94165386545363591c2f8ea.tar.gz box64-43d281740778f959f94165386545363591c2f8ea.zip | |
[DYNAREC] Fixed an issue with flags when using SF_SET_NODF (fixed regression with Freedom Planet 2 Wine/Wow64, probably a few other too)
| -rw-r--r-- | src/dynarec/dynarec_native.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/dynarec/dynarec_native.c b/src/dynarec/dynarec_native.c index d4934439..2482aa08 100644 --- a/src/dynarec/dynarec_native.c +++ b/src/dynarec/dynarec_native.c @@ -354,7 +354,7 @@ static int updateNeed(dynarec_native_t* dyn, int ninst, uint8_t need) { need &=~X_PEND; need |= X_ALL; } - if((need&X_PEND) && (dyn->insts[ninst].x64.state_flags==SF_SET)) { + if((need&X_PEND) && (dyn->insts[ninst].x64.state_flags==SF_SET || dyn->insts[ninst].x64.state_flags==SF_SET_NODF)) { need &=~X_PEND; need |= dyn->insts[ninst].x64.set_flags; // SF_SET will compute all flags, it's not SUBSET! } |