backend/arm64/fpsr_manager: Bugfixes
This commit is contained in:
parent
2ab0e64be4
commit
11c02e5a62
1 changed files with 2 additions and 2 deletions
|
@ -21,7 +21,7 @@ void FpsrManager::Spill() {
|
||||||
return;
|
return;
|
||||||
|
|
||||||
code.LDR(Wscratch0, Xstate, state_fpsr_offset);
|
code.LDR(Wscratch0, Xstate, state_fpsr_offset);
|
||||||
code.MSR(oaknut::SystemReg::FPSR, Xscratch1);
|
code.MRS(Xscratch1, oaknut::SystemReg::FPSR);
|
||||||
code.ORR(Wscratch0, Wscratch0, Wscratch1);
|
code.ORR(Wscratch0, Wscratch0, Wscratch1);
|
||||||
code.STR(Wscratch0, Xstate, state_fpsr_offset);
|
code.STR(Wscratch0, Xstate, state_fpsr_offset);
|
||||||
|
|
||||||
|
@ -32,7 +32,7 @@ void FpsrManager::Load() {
|
||||||
if (fpsr_loaded)
|
if (fpsr_loaded)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
code.MRS(XZR, oaknut::SystemReg::FPSR);
|
code.MSR(oaknut::SystemReg::FPSR, XZR);
|
||||||
|
|
||||||
fpsr_loaded = true;
|
fpsr_loaded = true;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue