about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2025-04-23 10:55:17 +0200
committerptitSeb <sebastien.chev@gmail.com>2025-04-23 10:55:17 +0200
commitd79d6bd6c2a84ede9a5a07b80549f05451615021 (patch)
tree3290b150de01f9fdab471d11de3be5588f67e639 /src
parentcc6500b7ddd633c3294225f433fe77caaf4473f9 (diff)
downloadbox64-d79d6bd6c2a84ede9a5a07b80549f05451615021.tar.gz
box64-d79d6bd6c2a84ede9a5a07b80549f05451615021.zip
[INTERP] RaZ upper 128bits on vmov* Ex, Gx if Ex is a registry (unused?)
Diffstat (limited to 'src')
-rw-r--r--src/emu/x64runavx0f.c3
-rw-r--r--src/emu/x64runavx660f.c3
2 files changed, 6 insertions, 0 deletions
diff --git a/src/emu/x64runavx0f.c b/src/emu/x64runavx0f.c
index 215d189a..5412a743 100644
--- a/src/emu/x64runavx0f.c
+++ b/src/emu/x64runavx0f.c
@@ -85,6 +85,9 @@ uintptr_t RunAVX_0F(x64emu_t *emu, vex_t vex, uintptr_t addr, int *step)
                 GETGY;
                 EY->q[0] = GY->q[0];
                 EY->q[1] = GY->q[1];
+            } else if(MODREG) {
+                GETEY;
+                EY->u128 = 0;
             }
             break;
         case 0x12:
diff --git a/src/emu/x64runavx660f.c b/src/emu/x64runavx660f.c
index 75230809..195d950b 100644
--- a/src/emu/x64runavx660f.c
+++ b/src/emu/x64runavx660f.c
@@ -168,6 +168,9 @@ uintptr_t RunAVX_660F(x64emu_t *emu, vex_t vex, uintptr_t addr, int *step)
                 GETGY;
                 EY->q[0] = GY->q[0];
                 EY->q[1] = GY->q[1];
+            } else if(MODREG) {
+                GETEY;
+                EY->u128 = 0;
             }
             break;