mirror of
https://git.suyu.dev/suyu/dynarmic.git
synced 2026-01-05 22:18:16 +01:00
A64: Partially implement MRS
This commit is contained in:
parent
bfd65bedfe
commit
8756487554
8 changed files with 48 additions and 2 deletions
|
|
@ -46,4 +46,17 @@ bool TranslatorVisitor::DMB(Imm<4> /*CRm*/) {
|
|||
return true;
|
||||
}
|
||||
|
||||
bool TranslatorVisitor::MRS(Imm<1> o0, Imm<3> op1, Imm<4> CRn, Imm<4> CRm, Imm<3> op2, Reg Rt) {
|
||||
const size_t sys_reg = concatenate(Imm<1>{1}, o0, op1, CRn, CRm, op2).ZeroExtend<size_t>();
|
||||
switch (sys_reg) {
|
||||
case 0b11'011'1101'0000'011: // TPIDRRO_EL0
|
||||
X(64, Rt, ir.GetTPIDRRO());
|
||||
return true;
|
||||
case 0b11'011'0000'0000'111: // DCZID_EL0
|
||||
X(32, Rt, ir.GetDCZID());
|
||||
return true;
|
||||
}
|
||||
return InterpretThisInstruction();
|
||||
}
|
||||
|
||||
} // namespace Dynarmic::A64
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue