diff options
author | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-04-26 19:48:05 +0000 |
---|---|---|
committer | bellard <bellard@c046a42c-6fe2-441c-8c8c-71466251a162> | 2004-04-26 19:48:05 +0000 |
commit | 1ef59d0acf7c71e9b863bff904ceac74ce9bd107 (patch) | |
tree | b30d2c5559af20a46f31001190fbca5d0bc38c3a /target-ppc/op.c | |
parent | 7fd7b91fac396fcc3d72ecadbcb49f5736755d23 (diff) | |
download | qemu-1ef59d0acf7c71e9b863bff904ceac74ce9bd107.tar.gz qemu-1ef59d0acf7c71e9b863bff904ceac74ce9bd107.tar.bz2 qemu-1ef59d0acf7c71e9b863bff904ceac74ce9bd107.zip |
ppc fixes (Jocelyn Mayer)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@765 c046a42c-6fe2-441c-8c8c-71466251a162
Diffstat (limited to 'target-ppc/op.c')
-rw-r--r-- | target-ppc/op.c | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/target-ppc/op.c b/target-ppc/op.c index 12c92891cd..de7e247355 100644 --- a/target-ppc/op.c +++ b/target-ppc/op.c @@ -1368,28 +1368,32 @@ PPC_OP(fmsubs) /* fnmadd - fnmadd. - fnmadds - fnmadds. */ PPC_OP(fnmadd) { - FT0 = -((FT0 * FT1) + FT2); + FT0 *= FT1; + FT0 += FT2; + FT0 = -FT0; RETURN(); } /* fnmadds - fnmadds. */ PPC_OP(fnmadds) { - FTS0 = -((FTS0 * FTS1) + FTS2); + do_fnmadds(); RETURN(); } /* fnmsub - fnmsub. */ PPC_OP(fnmsub) { - FT0 = -((FT0 * FT1) - FT2); + FT0 *= FT1; + FT0 -= FT2; + FT0 = -FT0; RETURN(); } /* fnmsubs - fnmsubs. */ PPC_OP(fnmsubs) { - FTS0 = -((FTS0 * FTS1) - FTS2); + do_fnmsubs(); RETURN(); } |