about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorphorcys <phorcys@126.com>2025-10-14 15:12:45 +0800
committerGitHub <noreply@github.com>2025-10-14 09:12:45 +0200
commit524c5ad47a3aa1fc7320e43fa4b82f7506d6d6cb (patch)
tree7638ce230f15a3c1ed82614eece7007c3dd0b8e2
parent3d0423acf703be7e0e7b004ee85630f6684bf72e (diff)
downloadbox64-524c5ad47a3aa1fc7320e43fa4b82f7506d6d6cb.tar.gz
box64-524c5ad47a3aa1fc7320e43fa4b82f7506d6d6cb.zip
[LA64_DYNAREC] Fix SSE CMPPD, wrong reg operand for cUN cOR. (#3068)
-rw-r--r--src/dynarec/la64/dynarec_la64_660f.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/dynarec/la64/dynarec_la64_660f.c b/src/dynarec/la64/dynarec_la64_660f.c
index 8b3558d9..abbaa0a5 100644
--- a/src/dynarec/la64/dynarec_la64_660f.c
+++ b/src/dynarec/la64/dynarec_la64_660f.c
@@ -2152,11 +2152,11 @@ uintptr_t dynarec64_660F(dynarec_la64_t* dyn, uintptr_t addr, uintptr_t ip, int
                 case 0: VFCMP_D(v0, v0, v1, cEQ); break;  // Equal => cEQ              True if EQ
                 case 1: VFCMP_D(v0, v0, v1, cLT); break;  // Less than => cLT          True if EQ LT
                 case 2: VFCMP_D(v0, v0, v1, cLE); break;  // Less or equal => CLE      True if LT EQ
-                case 3: VFCMP_D(v0, v0, v0, cUN); break;  // unordered => CUN          True if UN
+                case 3: VFCMP_D(v0, v0, v1, cUN); break;  // unordered => CUN          True if UN
                 case 4: VFCMP_D(v0, v0, v1, cUNE); break; // Not Equal or unordered    True if UN LT GT
                 case 5: VFCMP_D(v0, v1, v0, cULE); break; // grether or equal or un    True if UN EQ GT, use cULE UN LT, swap v0 v1
                 case 6: VFCMP_D(v0, v1, v0, cULT); break; // Greater or unordered      True if UN GT, use cULE UN EQ LT, swap v0 v1
-                case 7: VFCMP_D(v0, v0, v0, cOR); break;  // not NaN(ordered)          True if LT EQ GT
+                case 7: VFCMP_D(v0, v0, v1, cOR); break;  // not NaN(ordered)          True if LT EQ GT
             }
             break;
         case 0xC4: