From 1b95f61d82da17f691cc70cc108a08bef0831abd Mon Sep 17 00:00:00 2001 From: bunnei Date: Thu, 15 Sep 2016 17:58:06 -0400 Subject: arm_dynarmic: Implement GetVFPSystemReg/SetVFPSystemReg. --- src/core/arm/dynarmic/arm_dynarmic.cpp | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) (limited to 'src/core/arm') diff --git a/src/core/arm/dynarmic/arm_dynarmic.cpp b/src/core/arm/dynarmic/arm_dynarmic.cpp index a9cb973df..a521aec7c 100644 --- a/src/core/arm/dynarmic/arm_dynarmic.cpp +++ b/src/core/arm/dynarmic/arm_dynarmic.cpp @@ -87,14 +87,21 @@ void ARM_Dynarmic::SetVFPReg(int index, u32 value) { } u32 ARM_Dynarmic::GetVFPSystemReg(VFPSystemRegister reg) const { - // TODO(bunnei): ImplementMe - UNIMPLEMENTED(); - return 0; + if (reg == VFP_FPSCR) { + return jit->Fpscr(); + } + + // Dynarmic does not implement and/or expose other VFP registers, fallback to interpreter state + return interpreter_state->VFP[reg]; } void ARM_Dynarmic::SetVFPSystemReg(VFPSystemRegister reg, u32 value) { - // TODO(bunnei): ImplementMe - UNIMPLEMENTED(); + if (reg == VFP_FPSCR) { + jit->SetFpscr(value); + } + + // Dynarmic does not implement and/or expose other VFP registers, fallback to interpreter state + interpreter_state->VFP[reg] = value; } u32 ARM_Dynarmic::GetCPSR() const { -- cgit v1.2.3