-
Notifications
You must be signed in to change notification settings - Fork 2.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Interpreter: fix NaN handling in FMA instructions #2381
Conversation
This seems like it could use a game-specific option (with the default being inaccurate NaNs). Thoughts? |
@@ -84,7 +84,7 @@ inline double Force25Bit(double d) | |||
// these functions allow globally modify operations behaviour | |||
// also, these may be used to set flags like FR, FI, OX, UX | |||
|
|||
inline double NI_mul(const double a, const double b) | |||
inline double NI_mul(double a, double b) |
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
This comment was marked as off-topic.
This comment was marked as off-topic.
Sorry, something went wrong.
I think a game-specific option for hyper-accurate floating point emulation could be appropriate. Not sure if we should split it up for maximum performance (NaNs, FPSCR, other things...?) or if we should just put it all in one. |
Added an option "AccurateNaNs" which is on by default for easy testing. (The SSE2 path is still kind of neglected.) Dropped the last commit because that one's obviously not done yet. |
Ping? Is this ready to merge? |
No, and it probably shouldn't be merged for 5.0. (The FMA-unrelated commits have already been merged as part of other PRs.) |
I've dropped the Jit64 stuff for now, because that will still take a bit longer. This PR should be ready to review/merge. |
Interpreter: fix NaN handling in FMA instructions
Will eventually fix issue 8364.Removed the Jit64 stuff for now.