Skip to content
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

Jit: Use accurate negation order for FMA instructions #9973

Merged
merged 2 commits into from
Aug 1, 2021

Conversation

JosJuice
Copy link
Member

It was believed that this only mattered when the rounding mode was set to round to infinity, which games generally don't do, but it can also affect the sign of the output when the inputs are all zero.

@JMC47
Copy link
Contributor

JMC47 commented Jul 29, 2021

Fixes issue https://bugs.dolphin-emu.org/issues/12297

@JMC47
Copy link
Contributor

JMC47 commented Jul 29, 2021

Performance doesn't seem to be any different from what I can tell.

Source/Core/Core/PowerPC/Jit64/Jit_FloatingPoint.cpp Outdated Show resolved Hide resolved
MOVAPD(XMM1, R(result_xmm));
result_xmm = XMM1;
MOVAPD(Rd, R(result_xmm));
result_xmm = Rd;
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Feel free to ignore, but I think you can lift the two HandleNaNs() below to here as well

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Like this?

It was believed that this only mattered when the rounding mode was
set to round to infinity, which games generally don't do, but it
can also affect the sign of the output when the inputs are all zero.
@lioncash lioncash merged commit 6278323 into dolphin-emu:master Aug 1, 2021
@JosJuice JosJuice deleted the jit-fma-negation-order branch August 1, 2021 07:29
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

4 participants