commit 1a428de189 introduced a bug by using a signed enum in a bitfield, the value of which is then used in a ldmxcsr instruction. The sign-extension corrupts the value, causing an exception by attempting to load mxcsr with an invalid value.

This commit is contained in:
Shawn Hoffman
2014-03-04 22:49:33 -08:00
parent 0c613a5f5b
commit 7733463e65
2 changed files with 4 additions and 3 deletions

View File

@ -390,7 +390,7 @@ union UReg_FPSCR
struct
{
// Rounding mode (towards: nearest, zero, +inf, -inf)
enum FPURoundMode::RoundModes RN : 2;
FPURoundMode::RoundModes RN : 2;
// Non-IEEE mode enable (aka flush-to-zero)
u32 NI : 1;
// Inexact exception enable