Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
Merge pull request #887 from FioraAeterna/fmulinterp
Bugfixes for fmul rounding
  • Loading branch information
shuffle2 committed Aug 27, 2014
2 parents 75b9d6d + 1a0a335 commit 061f205
Show file tree
Hide file tree
Showing 2 changed files with 7 additions and 7 deletions.
Expand Up @@ -481,8 +481,8 @@ void Interpreter::fmsubx(UGeckoInstruction _inst)

void Interpreter::fmsubsx(UGeckoInstruction _inst)
{
rPS0(_inst.FD) = rPS1(_inst.FD) =
ForceSingle(NI_msub(rPS0(_inst.FA), rPS0(_inst.FC), rPS0(_inst.FB)));
double c_value = Force25Bit(rPS0(_inst.FC));
rPS0(_inst.FD) = rPS1(_inst.FD) = ForceSingle(NI_msub(rPS0(_inst.FA), c_value, rPS0(_inst.FB)));
UpdateFPRF(rPS0(_inst.FD));

if (_inst.Rc)
Expand All @@ -500,8 +500,8 @@ void Interpreter::fnmaddx(UGeckoInstruction _inst)

void Interpreter::fnmaddsx(UGeckoInstruction _inst)
{
rPS0(_inst.FD) = rPS1(_inst.FD) =
ForceSingle(-NI_madd(rPS0(_inst.FA), rPS0(_inst.FC), rPS0(_inst.FB)));
double c_value = Force25Bit(rPS0(_inst.FC));
rPS0(_inst.FD) = rPS1(_inst.FD) = ForceSingle(-NI_madd(rPS0(_inst.FA), c_value, rPS0(_inst.FB)));
UpdateFPRF(rPS0(_inst.FD));

if (_inst.Rc)
Expand All @@ -520,8 +520,8 @@ void Interpreter::fnmsubx(UGeckoInstruction _inst)
// fnmsubsx does not handle QNAN properly - see NI_msub
void Interpreter::fnmsubsx(UGeckoInstruction _inst)
{
rPS0(_inst.FD) = rPS1(_inst.FD) =
ForceSingle(-NI_msub(rPS0(_inst.FA), rPS0(_inst.FC), rPS0(_inst.FB)));
double c_value = Force25Bit(rPS0(_inst.FC));
rPS0(_inst.FD) = rPS1(_inst.FD) = ForceSingle(-NI_msub(rPS0(_inst.FA), c_value, rPS0(_inst.FB)));
UpdateFPRF(rPS0(_inst.FD));

if (_inst.Rc)
Expand Down
Expand Up @@ -349,7 +349,7 @@ void Interpreter::ps_sum1(UGeckoInstruction _inst)

void Interpreter::ps_muls0(UGeckoInstruction _inst)
{
double c0 = Force25Bit(rPS1(_inst.FC));
double c0 = Force25Bit(rPS0(_inst.FC));
double p0 = ForceSingle(NI_mul(rPS0(_inst.FA), c0));
double p1 = ForceSingle(NI_mul(rPS1(_inst.FA), c0));
rPS0(_inst.FD) = p0;
Expand Down

0 comments on commit 061f205

Please sign in to comment.