summaryrefslogtreecommitdiff
path: root/Source/Core
diff options
context:
space:
mode:
authorJosJuice <josjuice@gmail.com>2024-05-25 18:13:38 +0200
committerJosJuice <josjuice@gmail.com>2024-05-25 18:13:38 +0200
commit30eff8e37c05e44e2a5c4d2b53de3348c00df3ee (patch)
treec2373020b3b348b6e76a44e420d45ef11f7d72c4 /Source/Core
parente0e09d1074ee5b067d92cc50c093992fe9dca7a5 (diff)
PPCAnalyst: Fix handling of FL_READ_CR_BI
BI contains both the field and the flag (5 bits total), so we need to shift away the 2 flag bits to get the 3 field bits. (Same as the CRBA/CRBB handling in the code just below the BI code.)
Diffstat (limited to 'Source/Core')
-rw-r--r--Source/Core/Core/PowerPC/PPCAnalyst.cpp2
1 files changed, 1 insertions, 1 deletions
diff --git a/Source/Core/Core/PowerPC/PPCAnalyst.cpp b/Source/Core/Core/PowerPC/PPCAnalyst.cpp
index a0addb56c6..917b0b27eb 100644
--- a/Source/Core/Core/PowerPC/PPCAnalyst.cpp
+++ b/Source/Core/Core/PowerPC/PPCAnalyst.cpp
@@ -590,7 +590,7 @@ void PPCAnalyzer::SetInstructionStats(CodeBlock* block, CodeOp* code,
}
else if (opinfo->flags & FL_READ_CR_BI)
{
- code->crIn[code->inst.BI] = true;
+ code->crIn[code->inst.BI >> 2] = true;
}
else if (opinfo->type == OpType::CR)
{