about summary refs log tree commit diff stats
path: root/src
diff options
context:
space:
mode:
authorptitSeb <sebastien.chev@gmail.com>2024-04-28 22:16:29 +0200
committerptitSeb <sebastien.chev@gmail.com>2024-04-28 22:16:29 +0200
commit06a21d490bdbf3760c3bdb3641926b0837309e06 (patch)
tree392fd15586d1b77919c3a6d2c6ef8421e88b6ce3 /src
parentef0c9bd429f962b7b5cd0f496aacf4f286f4b120 (diff)
downloadbox64-06a21d490bdbf3760c3bdb3641926b0837309e06.tar.gz
box64-06a21d490bdbf3760c3bdb3641926b0837309e06.zip
[ARM64_DYNAREC] Some fixes to pcmp[ei]strm opcodes
Diffstat (limited to 'src')
-rw-r--r--src/dynarec/arm64/dynarec_arm64_660f.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/dynarec/arm64/dynarec_arm64_660f.c b/src/dynarec/arm64/dynarec_arm64_660f.c
index 2b9a413e..fe4ef9fb 100644
--- a/src/dynarec/arm64/dynarec_arm64_660f.c
+++ b/src/dynarec/arm64/dynarec_arm64_660f.c
@@ -1250,9 +1250,9 @@ uintptr_t dynarec64_660F(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int n
                     u8 = F8;

                     MOV32w(x5, u8);

                     CALL(sse42_compare_string_explicit_len, x1);

-                    q0 = sse_get_reg_empty(dyn, ninst, x2, gd);

-                    q1 = fpu_get_scratch(dyn);

+                    q0 = sse_get_reg_empty(dyn, ninst, x2, 0);

                     if(u8&0b1000000) {

+                        q1 = fpu_get_scratch(dyn);

                         switch(u8&1) {

                             case 0b00:

                                 VDUPQB(q0, x1); // load the low 8bits of the mask

@@ -1453,9 +1453,9 @@ uintptr_t dynarec64_660F(dynarec_arm_t* dyn, uintptr_t addr, uintptr_t ip, int n
                     u8 = F8;

                     MOV32w(x3, u8);

                     CALL(sse42_compare_string_implicit_len, x1);

-                    q0 = sse_get_reg_empty(dyn, ninst, x2, gd);

-                    q1 = fpu_get_scratch(dyn);

+                    q0 = sse_get_reg_empty(dyn, ninst, x2, 0);

                     if(u8&0b1000000) {

+                        q1 = fpu_get_scratch(dyn);

                         switch(u8&1) {

                             case 0b00:

                                 VDUPQB(q0, x1); // load the low 8bits of the mask