diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-04-28 22:16:29 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-04-28 22:16:29 +0200 |
| commit | 06a21d490bdbf3760c3bdb3641926b0837309e06 (patch) | |
| tree | 392fd15586d1b77919c3a6d2c6ef8421e88b6ce3 /src | |
| parent | ef0c9bd429f962b7b5cd0f496aacf4f286f4b120 (diff) | |
| download | box64-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.c | 8 |
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 |