a32_jitstate: Remove exception trap enables from FPSCR_MODE_MASK

We don't currently use this for anything (we do not currently trap
floating point exceptions).

This frees these bits up for other purposes.
This commit is contained in:
MerryMage 2019-05-05 19:38:51 +01:00
parent fd6222f0a1
commit f178562ee7
2 changed files with 1 additions and 4 deletions

View file

@ -177,9 +177,6 @@ void A32JitState::SetFpscr(u32 FPSCR) {
// Exception masks / enables // Exception masks / enables
guest_MXCSR |= 0x00001f80; // mask all guest_MXCSR |= 0x00001f80; // mask all
//guest_MXCSR |= (~FPSCR >> 1) & 0b0000010000000; // IM = ~IOE
//guest_MXCSR |= (~FPSCR >> 7) & 0b0000100000000; // DM = ~IDE
//guest_MXCSR |= (~FPSCR ) & 0b1111000000000; // PM, UM, OM, ZM = ~IXE, ~UFE, ~OFE, ~DZE
// RMode // RMode
const std::array<u32, 4> MXCSR_RMode {0x0, 0x4000, 0x2000, 0x6000}; const std::array<u32, 4> MXCSR_RMode {0x0, 0x4000, 0x2000, 0x6000};

View file

@ -26,7 +26,7 @@ class LocationDescriptor {
public: public:
// Indicates bits that should be preserved within descriptors. // Indicates bits that should be preserved within descriptors.
static constexpr u32 CPSR_MODE_MASK = 0x00000220; static constexpr u32 CPSR_MODE_MASK = 0x00000220;
static constexpr u32 FPSCR_MODE_MASK = 0x07F79F00; static constexpr u32 FPSCR_MODE_MASK = 0x07F70000;
LocationDescriptor(u32 arm_pc, PSR cpsr, FPSCR fpscr) LocationDescriptor(u32 arm_pc, PSR cpsr, FPSCR fpscr)
: arm_pc(arm_pc), cpsr(cpsr.Value() & CPSR_MODE_MASK), fpscr(fpscr.Value() & FPSCR_MODE_MASK) {} : arm_pc(arm_pc), cpsr(cpsr.Value() & CPSR_MODE_MASK), fpscr(fpscr.Value() & FPSCR_MODE_MASK) {}