summaryrefslogtreecommitdiff
path: root/src/mpc-impl.h
Commit message (Collapse)AuthorAgeFilesLines
* fixed typos reported by Ondřej Bílka <neleai@seznam.cz>zimmerma2013-07-241-1/+1
| | | | | | | (cf http://lists.gforge.inria.fr/pipermail/mpc-discuss/2013-July/001241.html) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1298 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* remove compatibility function ROUND_AWAYenge2012-07-231-28/+0
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1247 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* changed GMP_RND? to MPFR_RND?enge2012-07-231-6/+6
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1246 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: added MPFR_OUT and MPC_OUT, useful for debuggingenge2012-06-301-0/+21
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1216 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, fma.c: export function fma_naive for testsenge2012-06-261-0/+1
| | | | | | | | tfma.c: add random tests comparing fma to fma_naive fma.dat: test with exact 0 as result git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1168 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: take NDBUG into account for MPC_ASSERTenge2012-06-261-1/+6
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1163 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* solved problems left by r1144 (visibly not tested)zimmerma2012-03-141-10/+10
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1145 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, mul.c: made mpfr_fmma static againenge2012-03-021-1/+0
| | | | | | | | | sqr.c: copied mpfr_fmma as mpfr_fsss and adapted to case a^2-v^2 sqr.dat: activated last test passes with naive squaring, but not with Karatsuba git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1137 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mul.c: reverted previous, too hasty commit; needs more thoughtenge2012-03-021-1/+3
| | | | | | | | | | mpc-impl.h, mul.c, sqr.c: for the time being, exported mpfr_fmma to be shared between mul.c and sqr.c sqr.dat: added commented out test that currently fails with naive and Karatsuba algorithms alike git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1135 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc.h, mpc-impl.h, logging.c: correctly determine that logging.c belongsenge2011-12-201-0/+2
| | | | | | | | to the library although it does not include mpc-impl.h see http://lists.gforge.inria.fr/pipermail/mpc-discuss/2011-December/001027.html git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1117 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc.h, mpc-impl.h: removed __MPC_WITHIN_MPC, since now mpc-impl.h isenge2011-11-041-7/+0
| | | | | | | included only for the library build git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1115 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* removed inclusion of mpc-impl.h from mpc-tests.h, required to copy some ↵enge2011-11-041-17/+0
| | | | | | lines into the latter git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1114 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: correct use of sed in previous commitenge2011-11-041-2/+2
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1113 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* replaced MPC_RE by mpc_realref and MPC_IM by mpc_imagref everywhereenge2011-11-041-11/+8
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1112 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, random.c: include config.h as first include fileenge2011-11-041-1/+3
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1111 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc.h. mpc-tests.h, mpc-impl.h: handle __MPC_DECLSPEC as for mpfr;enge2011-11-031-0/+7
| | | | | | | | define as __GMP_DECLSPEC_EXPORT if library is compiled and __GMP_LIBGMP_DLL, as in gmp otherwise git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1109 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* norm.c: rewritten to handle all cases of over- and underflow and to obtain aenge2011-09-021-0/+1
| | | | | | | | | | correct ternary return value norm.dat: new tests with over- and underflow mpc-impl.h: added macro MPC_MIN BUGS, TODO, mpc.texi updated to reflect these changes git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1071 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* license change:enge2011-08-291-12/+11
| | | | | | | | | | | | LGPLv3+ for code FDLv1.3+ for mpc.texi simple disclaimer for supporting files (README, NEWS, INSTALL) tests/memory.c: replaced by version from mpfr-3.0.1 mpfr.texi: small cleanups; added real authors again, while keeping copyright notice with INRIA git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1027 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, get_version.c:enge2011-02-231-1/+7
| | | | | | | | | declare and define functions mpfr_set_zero and mpfr_regular_p when compiling with mpfr<3 sin_cos.c, fma.c: use these functions git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@961 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mul.c: mpc_mul_naive now assumes that all numbers have only non-zero (andenge2011-02-231-0/+1
| | | | | | | | finite) parts; add assertion tmul.c: disable comparison between naive and Karatsuba with zero parts git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@950 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: added macro MPFR_OUT, analogous to MPC_OUT, to help debuggingenge2011-02-231-1/+8
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@947 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* changed copyright lines in src to "Copyright (C) INRIA, year1, year2, ..."zimmerma2011-01-251-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@890 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h and test files: replaced macro OUT by MPC_OUTenge2011-01-131-2/+2
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@867 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* sqrt.c: bug #11421 fixed for all rounding modesenge2010-11-181-1/+2
| | | | | | | | sqrt.dat: added corresponding tests mpc-impl.h: added macro MPFR_SUB_ONE_ULP git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@855 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* replaced calls to macro mpfr_add_one_ulp(x,GMP_RNDN) by MPFR_ADD_ONE_ULP(x)enge2010-09-171-1/+3
| | | | | | | (which expands to the previous one) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@840 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: ROUND_AWAY should return +1 or -1 depending on the direction of theenge2010-09-171-1/+1
| | | | | | | rounding error git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@839 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: add macro for rounding away even with older versions of mpfrenge2010-09-171-0/+22
| | | | | | | sqr.c: use the macro git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@838 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* moved declaration of set_pi_over_2 from acos.c/asin.c to header file mpc-impl.henge2010-09-021-0/+1
| | | | | | | added a few key words "static" and "extern" in tests/ git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@828 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* fixed sign conversion in mpc_ceil_log2enge2010-08-311-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@821 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: removed unused macro MPFR_IS_SINGULAR and remaindersenge2010-08-301-8/+1
| | | | | | | of logging support git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@816 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* code cleanup: removed macro MPFR_EXP from mpc-impl.henge2010-07-301-2/+0
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@815 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* code cleanup:enge2010-07-301-4/+3
| | | | | | | | | removed macro MPFR_PREC from mpc-impl.h replaced MPFR_PREC (MPC_RE (op)) by MPC_PREC_RE (op) and MPFR_PREC (MPC_IM (op)) by MPC_PREC_IM (op) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@814 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* unified computation of pow_ui and pow_si in a function pow_usi, therebyenge2010-06-171-1/+2
| | | | | | | applying binary exponentiation in the case of negative exponent git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@788 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, tgeneric.c: replaced for loop over enum (C) and iterator (C++)enge2010-06-171-9/+0
| | | | | | | by C functions; compatible with mpfr before and after version 3 git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@786 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* replaced mp_prec_t by mpfr_prec_t; compatibility with mpfr>=2.3.1enge2010-06-111-2/+2
| | | | | | | is preserved, since it already defines mpfr_prec_t git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@776 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* corrected mixtures of signed/unsigned arisen due to signednedd change inenge2010-06-111-2/+2
| | | | | | | | | mp_prec_t with mpfr-3.0.0: uceil_log2.c, mpc-impl.h: changed return type to mp_prec_t pow.c: some casts to mp_prec_t git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@775 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, mpc.texi: small changes to documentation and commentsenge2009-09-071-6/+6
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@670 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* div.c: correct signs of zeroes for division by real or purely imaginaryenge2009-08-221-2/+5
| | | | | | | | | | divisors mul.c: used new macro MPFR_SIGNBIT from mpc-impl.h mpc-impl.h: implemented macro MPFR_COPYSIGN to work around the strange behaviour of mpfr_copysign git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@655 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: new macros MPFR_SIGNBIT and MPC_MPFR_SIGNenge2009-08-201-0/+3
| | | | | | | div.c: handling of non-finite numbers as in C99 git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@653 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: renamed MPC_IS_INF to mpc_inf_p and MPC_IS_ZERO to mpc_zero_penge2009-08-201-2/+7
| | | | | | | | added mpc_fin_p and mpc_nan_p mul.c, proj.c: used renamed macroes git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@652 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* src/mpc-impl.h: Add a C++ iterator on mpfr_rnd_t enum (g++ 4.3.2 refuses to ↵thevenyp2009-07-291-0/+9
| | | | | | | | | | | iterate on enumeration, bug reported by Mickael Gastineau). tests/tgeneric.c: Use prefix iterator ++, iterate between GMP_RNDN and GMP_RND_MAX. tests/read_data.c: Explicit cast of malloc return. NEWS: Fix compilation with g++. git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@627 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h: added an __MPC_DECLSPEC, just in caseenge2009-06-091-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@588 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* removed logging macros, which were essentially unusedenge2009-06-091-42/+0
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@587 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* moved MPC_RE and MPC_IM to mpc-impl.h and removed their documentation,enge2009-06-041-2/+5
| | | | | | | since they are redundant with mpc_realref and mpc_imagref git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@546 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [configure.ac] minimal GMP version is now 4.1.3 instead of 4.2zimmerma2009-03-271-0/+3
| | | | | | | | | [mem.c] new wrapper file for mp_get_memory_functions (not in GMP 4.1.3) [get_str.c,inp_str.c] moved mp_get_memory_functions to mem.c [tests/tset.c,tests/random.c] added wrappers for gmp_random functions (not in GMP 4.1.3) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@509 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* src/mpc-impl.h: rename MAX -> MPC_MAX and SWAP -> MPFR_SWAPthevenyp2009-03-241-13/+16
| | | | | | | src/tan.c src/mul.c: Use renamed macros. git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@503 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* Modify #include chain so as to support DLL creation on Cygwinthevenyp2009-03-171-2/+7
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@457 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* src/mpc-impl.h: Add new macro MPC_ASSERT.thevenyp2009-03-111-1/+16
| | | | | | | | src/get_str.c: Add base value checking, use MPC_ASSERT to handle error cases. tests/tset.c: Test if base value is checked. git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@453 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* src/mpc.h: Cosmetic changes and add some missing __MPC_PROTO.thevenyp2009-03-111-20/+50
| | | | | | | src/mpc-impl.h: Cosmetic changes. git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@452 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* bug fix: printing precisions as "unsigned long int"enge2008-12-031-2/+3
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@376 211d60ee-9f03-0410-a15a-8952a2c7a4e4