e36e97c64d
* 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.
25 lines
479 B
C#
25 lines
479 B
C#
using System;
|
|
|
|
namespace ARMeilleure.State
|
|
{
|
|
[Flags]
|
|
public enum FPCR : uint
|
|
{
|
|
Ufe = 1u << 11,
|
|
Fz = 1u << 24,
|
|
Dn = 1u << 25,
|
|
Ahp = 1u << 26,
|
|
|
|
A32Mask = 0x07FF9F00u
|
|
}
|
|
|
|
public static class FPCRExtensions
|
|
{
|
|
private const int RModeShift = 22;
|
|
|
|
public static FPRoundingMode GetRoundingMode(this FPCR fpcr)
|
|
{
|
|
return (FPRoundingMode)(((int)fpcr >> RModeShift) & 3);
|
|
}
|
|
}
|
|
}
|