about summary refs log tree commit diff stats
path: root/src/dynarec/rv64
diff options
context:
space:
mode:
authorYang Liu <liuyang22@iscas.ac.cn>2025-10-10 16:38:04 +0800
committerGitHub <noreply@github.com>2025-10-10 10:38:04 +0200
commit6250f03b098619bc6c2dabaedf8560775cdb9bdf (patch)
tree696ab6b35d6f91d33e861aed8031c3d33d602d1d /src/dynarec/rv64
parent535798a7301442c1a1da3bd05c283ea62da48609 (diff)
downloadbox64-6250f03b098619bc6c2dabaedf8560775cdb9bdf.tar.gz
box64-6250f03b098619bc6c2dabaedf8560775cdb9bdf.zip
[DYNAREC][INTERP] Added a few multibyte nops (#3046)
Diffstat (limited to 'src/dynarec/rv64')
-rw-r--r--src/dynarec/rv64/dynarec_rv64_0f.c5
-rw-r--r--src/dynarec/rv64/dynarec_rv64_660f.c5
-rw-r--r--src/dynarec/rv64/dynarec_rv64_660f_vector.c5
3 files changed, 15 insertions, 0 deletions
diff --git a/src/dynarec/rv64/dynarec_rv64_0f.c b/src/dynarec/rv64/dynarec_rv64_0f.c
index f7b71b29..5cee64c1 100644
--- a/src/dynarec/rv64/dynarec_rv64_0f.c
+++ b/src/dynarec/rv64/dynarec_rv64_0f.c
@@ -310,6 +310,11 @@ uintptr_t dynarec64_0F(dynarec_rv64_t* dyn, uintptr_t addr, uintptr_t ip, int ni
             break;
 
         case 0x19:
+        case 0x1A:
+        case 0x1B:
+        case 0x1C:
+        case 0x1D:
+        case 0x1E:
         case 0x1F:
             INST_NAME("NOP (multibyte)");
             nextop = F8;
diff --git a/src/dynarec/rv64/dynarec_rv64_660f.c b/src/dynarec/rv64/dynarec_rv64_660f.c
index b7a8205f..8d1db074 100644
--- a/src/dynarec/rv64/dynarec_rv64_660f.c
+++ b/src/dynarec/rv64/dynarec_rv64_660f.c
@@ -146,6 +146,11 @@ uintptr_t dynarec64_660F(dynarec_rv64_t* dyn, uintptr_t addr, uintptr_t ip, int
             break;
         case 0x18:
         case 0x19:
+        case 0x1A:
+        case 0x1B:
+        case 0x1C:
+        case 0x1D:
+        case 0x1E:
         case 0x1F:
             INST_NAME("NOP (multibyte)");
             nextop = F8;
diff --git a/src/dynarec/rv64/dynarec_rv64_660f_vector.c b/src/dynarec/rv64/dynarec_rv64_660f_vector.c
index 3b6f0b54..97c14cb4 100644
--- a/src/dynarec/rv64/dynarec_rv64_660f_vector.c
+++ b/src/dynarec/rv64/dynarec_rv64_660f_vector.c
@@ -204,6 +204,11 @@ uintptr_t dynarec64_660F_vector(dynarec_rv64_t* dyn, uintptr_t addr, uintptr_t i
             break;
         case 0x18:
         case 0x19:
+        case 0x1A:
+        case 0x1B:
+        case 0x1C:
+        case 0x1D:
+        case 0x1E:
         case 0x1F:
             return 0;
         case 0x28: