summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGravatar bunnei2016-09-15 17:58:06 -0400
committerGravatar bunnei2016-09-15 17:58:06 -0400
commit1b95f61d82da17f691cc70cc108a08bef0831abd (patch)
treebb57f41d9d26c4a75059f28165acaff88cfde652
parentmicroprofile: Double buffer size to 16MB. (diff)
downloadyuzu-1b95f61d82da17f691cc70cc108a08bef0831abd.tar.gz
yuzu-1b95f61d82da17f691cc70cc108a08bef0831abd.tar.xz
yuzu-1b95f61d82da17f691cc70cc108a08bef0831abd.zip
arm_dynarmic: Implement GetVFPSystemReg/SetVFPSystemReg.
-rw-r--r--src/core/arm/dynarmic/arm_dynarmic.cpp17
1 files changed, 12 insertions, 5 deletions
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) {
87} 87}
88 88
89u32 ARM_Dynarmic::GetVFPSystemReg(VFPSystemRegister reg) const { 89u32 ARM_Dynarmic::GetVFPSystemReg(VFPSystemRegister reg) const {
90 // TODO(bunnei): ImplementMe 90 if (reg == VFP_FPSCR) {
91 UNIMPLEMENTED(); 91 return jit->Fpscr();
92 return 0; 92 }
93
94 // Dynarmic does not implement and/or expose other VFP registers, fallback to interpreter state
95 return interpreter_state->VFP[reg];
93} 96}
94 97
95void ARM_Dynarmic::SetVFPSystemReg(VFPSystemRegister reg, u32 value) { 98void ARM_Dynarmic::SetVFPSystemReg(VFPSystemRegister reg, u32 value) {
96 // TODO(bunnei): ImplementMe 99 if (reg == VFP_FPSCR) {
97 UNIMPLEMENTED(); 100 jit->SetFpscr(value);
101 }
102
103 // Dynarmic does not implement and/or expose other VFP registers, fallback to interpreter state
104 interpreter_state->VFP[reg] = value;
98} 105}
99 106
100u32 ARM_Dynarmic::GetCPSR() const { 107u32 ARM_Dynarmic::GetCPSR() const {