nce: fix read size in simd immediate emulation

master
Liam 2023-12-19 12:51:19 +07:00
parent efe52db690
commit a94721fde0
1 changed files with 2 additions and 1 deletions

@ -249,6 +249,7 @@ bool InterpreterVisitor::LDR_lit_fpsimd(Imm<2> opc, Imm<19> imm19, Vec Vt) {
return false;
}
// Size in bytes
const u64 size = 4 << opc.ZeroExtend();
const u64 offset = imm19.SignExtend<u64>() << 2;
const u64 address = this->GetPc() + offset;
@ -530,7 +531,7 @@ bool InterpreterVisitor::SIMDImmediate(bool wback, bool postindex, size_t scale,
}
case MemOp::Load: {
u128 data{};
m_memory.ReadBlock(address, &data, datasize);
m_memory.ReadBlock(address, &data, datasize / 8);
this->SetVec(Vt, data);
break;
}