diff options
| author | LDj3SNuD <35856442+LDj3SNuD@users.noreply.github.com> | 2020-08-08 17:18:51 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-08 17:18:51 +0200 |
| commit | e36e97c64d7b973fbbc3ac92e9f115d74a4d9e2d (patch) | |
| tree | 80bdb45273e6bbc0d862276bdb6f6551b0a2541d /ARMeilleure/State | |
| parent | 8d59ad88b4d59ef6ad26b9a747dc871fd1f1007a (diff) | |
CPU: This PR fixes Fpscr, among other things. (#1433)
* CPU: This PR fixes Fpscr, among other things.
* Add Fpscr.Qc = 1 if sat. for Vqrshrn & Vqrshrun.
* Fix Vcmp & Vcmpe opcode table.
* Revert "Fix Vcmp & Vcmpe opcode table."
This reverts commit c117d9410d693185ff5f8ee8e457ffbfb2027dd5.
* Address PR feedbacks.
Diffstat (limited to 'ARMeilleure/State')
| -rw-r--r-- | ARMeilleure/State/FPCR.cs | 10 | ||||
| -rw-r--r-- | ARMeilleure/State/FPSR.cs | 8 | ||||
| -rw-r--r-- | ARMeilleure/State/FPState.cs | 7 | ||||
| -rw-r--r-- | ARMeilleure/State/PState.cs | 3 |
4 files changed, 11 insertions, 17 deletions
diff --git a/ARMeilleure/State/FPCR.cs b/ARMeilleure/State/FPCR.cs index 913065ea..40d56045 100644 --- a/ARMeilleure/State/FPCR.cs +++ b/ARMeilleure/State/FPCR.cs @@ -5,12 +5,12 @@ namespace ARMeilleure.State [Flags] public enum FPCR : uint { - Ufe = 1 << 11, - Fz = 1 << 24, - Dn = 1 << 25, - Ahp = 1 << 26, + Ufe = 1u << 11, + Fz = 1u << 24, + Dn = 1u << 25, + Ahp = 1u << 26, - A32Mask = 0x07ffff00 + A32Mask = 0x07FF9F00u } public static class FPCRExtensions diff --git a/ARMeilleure/State/FPSR.cs b/ARMeilleure/State/FPSR.cs index 47323b35..800dcd10 100644 --- a/ARMeilleure/State/FPSR.cs +++ b/ARMeilleure/State/FPSR.cs @@ -5,9 +5,11 @@ namespace ARMeilleure.State [Flags] public enum FPSR : uint { - Ufc = 1 << 3, - Qc = 1 << 27, + Ufc = 1u << 3, + Qc = 1u << 27, - A32Mask = 0xf800000f + Nzcv = (1u << 31) | (1u << 30) | (1u << 29) | (1u << 28), + + A32Mask = 0xF800009Fu } } diff --git a/ARMeilleure/State/FPState.cs b/ARMeilleure/State/FPState.cs index 2fe2a567..60c7126c 100644 --- a/ARMeilleure/State/FPState.cs +++ b/ARMeilleure/State/FPState.cs @@ -1,10 +1,5 @@ -using System; -using System.Collections.Generic; -using System.Text; - -namespace ARMeilleure.State +namespace ARMeilleure.State { - [Flags] public enum FPState { VFlag = 28, diff --git a/ARMeilleure/State/PState.cs b/ARMeilleure/State/PState.cs index 8dbd84df..e087e702 100644 --- a/ARMeilleure/State/PState.cs +++ b/ARMeilleure/State/PState.cs @@ -1,8 +1,5 @@ -using System; - namespace ARMeilleure.State { - [Flags] public enum PState { TFlag = 5, |
