diff options
| author | ptitSeb <sebastien.chev@gmail.com> | 2024-06-24 16:04:29 +0200 |
|---|---|---|
| committer | ptitSeb <sebastien.chev@gmail.com> | 2024-06-24 16:04:29 +0200 |
| commit | 3dfcc278e0f736b578718e663fff470fa6a89dab (patch) | |
| tree | dd84271e27195310598c5e34e35030048ce0d800 /src | |
| parent | e312fa392d0b22e639e8c3383706c5c422a75212 (diff) | |
| download | box64-3dfcc278e0f736b578718e663fff470fa6a89dab.tar.gz box64-3dfcc278e0f736b578718e663fff470fa6a89dab.zip | |
[ARM64_DYNAREC] Minor fix on printer for SMOV/UMOV
Diffstat (limited to 'src')
| -rw-r--r-- | src/dynarec/arm64/arm64_printer.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/src/dynarec/arm64/arm64_printer.c b/src/dynarec/arm64/arm64_printer.c index ff5b8a2c..bacf5490 100644 --- a/src/dynarec/arm64/arm64_printer.c +++ b/src/dynarec/arm64/arm64_printer.c @@ -916,7 +916,6 @@ const char* arm64_print(uint32_t opcode, uintptr_t addr) } // UMOV if(isMask(opcode, "0Q001110000rrrrr001111nnnnnddddd", &a)) { - char q = a.Q?'Q':'D'; char s = '?'; int sz=0; if(a.Q==0 && immr&1) {s='B'; sz=0; } @@ -925,14 +924,13 @@ const char* arm64_print(uint32_t opcode, uintptr_t addr) else if(a.Q==1 && (immr&15)==8) {s='D'; sz=3; } int index = (immr)>>(sz+1); if(sz>2) - snprintf(buff, sizeof(buff), "MOV %s, %c%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], q, Rn, s, index); + snprintf(buff, sizeof(buff), "MOV %s, V%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], Rn, s, index); else - snprintf(buff, sizeof(buff), "UMOV %s, %c%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], q, Rn, s, index); + snprintf(buff, sizeof(buff), "UMOV %s, V%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], Rn, s, index); return buff; } // SMOV if(isMask(opcode, "0Q001110000rrrrr001011nnnnnddddd", &a)) { - char q = a.Q?'Q':'D'; char s = '?'; int sz=0; if(a.Q==0 && immr&1) {s='B'; sz=0; } @@ -941,9 +939,9 @@ const char* arm64_print(uint32_t opcode, uintptr_t addr) else if(a.Q==1 && (immr&15)==8) {s='D'; sz=3; } int index = (immr)>>(sz+1); if(sz>2) - snprintf(buff, sizeof(buff), "MOV %s, %c%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], q, Rn, s, index); + snprintf(buff, sizeof(buff), "MOV %s, V%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], Rn, s, index); else - snprintf(buff, sizeof(buff), "SMOV %s, %c%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], q, Rn, s, index); + snprintf(buff, sizeof(buff), "SMOV %s, V%d.%c[%d]", a.Q?Xt[Rd]:Wt[Rd], Rn, s, index); return buff; } // VEOR |