X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=src%2Fmul_fr.c;h=88ddbb72665e2a0ab8511c3a96e081ef4a36d445;hb=f34506723f150a03d5e6e389820bd369b89e30b0;hp=bd3574d8579f96bdb484871d558a53b1109a4fb6;hpb=c9266275a7240e07da227b662cc6afcb0000d7a6;p=platform%2Fupstream%2Fmpc.git diff --git a/src/mul_fr.c b/src/mul_fr.c index bd3574d..88ddbb7 100644 --- a/src/mul_fr.c +++ b/src/mul_fr.c @@ -1,22 +1,23 @@ /* mpc_mul_fr -- Multiply a complex number by a floating-point number. -Copyright (C) 2002, 2008, 2009, 2010, 2011 INRIA +Copyright (C) 2002, 2008, 2009 Andreas Enge, Paul Zimmermann, Philippe Th\'eveny -This file is part of GNU MPC. +This file is part of the MPC Library. -GNU MPC is free software; you can redistribute it and/or modify it under -the terms of the GNU Lesser General Public License as published by the -Free Software Foundation; either version 3 of the License, or (at your +The MPC Library is free software; you can redistribute it and/or modify +it under the terms of the GNU Lesser General Public License as published by +the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. -GNU MPC is distributed in the hope that it will be useful, but WITHOUT ANY -WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS -FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for -more details. +The MPC Library is distributed in the hope that it will be useful, but +WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY +or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public +License for more details. You should have received a copy of the GNU Lesser General Public License -along with this program. If not, see http://www.gnu.org/licenses/ . -*/ +along with the MPC Library; see the file COPYING.LIB. If not, write to +the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, +MA 02111-1307, USA. */ #include "mpc-impl.h" @@ -26,17 +27,17 @@ mpc_mul_fr (mpc_ptr a, mpc_srcptr b, mpfr_srcptr c, mpc_rnd_t rnd) int inex_re, inex_im; mpfr_t real; - if (c == mpc_realref (a)) - /* We have to use a temporary variable. */ - mpfr_init2 (real, MPC_PREC_RE (a)); + if (c == MPC_RE (a)) + /* We have to use temporary variable. */ + mpfr_init2 (real, MPFR_PREC (MPC_RE (a))); else - real [0] = mpc_realref (a) [0]; + real [0] = MPC_RE (a) [0]; - inex_re = mpfr_mul (real, mpc_realref(b), c, MPC_RND_RE(rnd)); - inex_im = mpfr_mul (mpc_imagref(a), mpc_imagref(b), c, MPC_RND_IM(rnd)); - mpfr_set (mpc_realref (a), real, GMP_RNDN); /* exact */ + inex_re = mpfr_mul (real, MPC_RE(b), c, MPC_RND_RE(rnd)); + inex_im = mpfr_mul (MPC_IM(a), MPC_IM(b), c, MPC_RND_IM(rnd)); + mpfr_set (MPC_RE (a), real, GMP_RNDN); /* exact */ - if (c == mpc_realref (a)) + if (c == MPC_RE (a)) mpfr_clear (real); return MPC_INEX(inex_re, inex_im);