summaryrefslogtreecommitdiff
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* log.dat, log.c: analyse infinite loop for test added in r1192enge2012-06-271-2/+5
| | | | | | | as a preliminary workaround, add assertion and disable test git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1198 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [fma.c] get rid of compiler warningzimmerma2012-06-271-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1191 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [pow_ui.c] updated copyright yearzimmerma2012-06-271-1/+1
| | | | | | | [fma.dat] added one test to improve code coverage git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1190 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [pow_ui.c] fixed bug in mpfr_can_round() call (and improved code coverage)zimmerma2012-06-271-2/+2
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1189 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/div.c] removed #include <stdio.h>bdadoun2012-06-271-2/+0
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1183 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/div.c] correct handling of negative overflowsbdadoun2012-06-271-8/+27
| | | | | | | [tests/div.dat] examples to exercise negative overflows git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1182 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/div.c] better handling of overflows (Benjamin Dadoun)bdadoun2012-06-271-2/+6
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1179 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* log.c: improve test coverage by flagging intermediate overflow by an assertenge2012-06-261-18/+15
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1176 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [div.dat] added example to exercise overflowzimmerma2012-06-261-8/+14
| | | | | | | | [div.c] deal with overflow (both common work with Benjamin Dadoun) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1175 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [fma.c] fixed error in mpfr_can_round() calls: use rnd1=GMP_RNDN to sayzimmerma2012-06-261-2/+2
| | | | | | | | the error on the approximation can be positive or negative (work with Benjamin Dadoun) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1171 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* atan.c, tatan.c: detect intermediate underflow and disable testenge2012-06-261-8/+5
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1170 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, fma.c: export function fma_naive for testsenge2012-06-262-2/+3
| | | | | | | | 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
* [tatan.c] added one test to improve the code coverage, which produces anzimmerma2012-06-261-1/+5
| | | | | | | | infinite loop in mpc_atan... [atan.c] added a check to detect potential infinite loops git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1167 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [fma.c] new code (hopefully faster?) after discussion with Andreas Enge,zimmerma2012-06-261-2/+61
| | | | | | | written with Benjamin Dadoun git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1164 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
* conj.dat, fr_sub.dat: complete branch test coverageenge2012-06-251-4/+3
| | | | | | | fr_sub.c: correct return value git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1161 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/log10.c] fixed typo (thanks Andreas Enge)zimmerma2012-04-171-1/+1
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1154 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/log10.c] fixed infinite loop when x^2+y^2 equals a power of ten,zimmerma2012-04-171-0/+49
| | | | | | | | for example x=3 and y=1 (http://lists.gforge.inria.fr/pipermail/mpc-discuss/2012-April/001096.html) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1153 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [log10.c] fixed wrong use of mpfr_can_round (found by hydra)zimmerma2012-04-041-12/+12
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1152 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* added new function mpc_log10zimmerma2012-04-033-1/+250
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1149 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* redoing previous task seriouslyenge2012-03-141-66/+66
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1146 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* solved problems left by r1144 (visibly not tested)zimmerma2012-03-143-112/+111
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1145 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* removed K&R supportenge2012-03-141-100/+93
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1144 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/mpc.h] removed reference to __GMP_PROTO and __gmp_const, which have beenzimmerma2012-03-111-6/+4
| | | | | | | removed from the GMP development version git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1143 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* sqr.c: simplification of Karatsuba; call naive function for real part in caseenge2012-03-071-64/+13
| | | | | | | | | of intermediate under-/overflow potentially slightly slower in these corner cases, but more likely to be correct git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1142 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* sqr.c: small changes to drop gotoenge2012-03-071-15/+18
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1141 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [mul.c] don't call mpc_sqr any more when both inputs are the same variablezimmerma2012-03-061-6/+0
| | | | | | | [mpc.texi,NEWS] document the above change git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1139 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [sqr.c] in the case of underflow in Karatsuba, fall back to mpfr_fssszimmerma2012-03-061-4/+11
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1138 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc-impl.h, mul.c: made mpfr_fmma static againenge2012-03-023-4/+139
| | | | | | | | | 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: added missing case of exactly one underflow to mpfr_fmma;enge2012-03-021-0/+8
| | | | | | | | commented out test case in sqr.dat now passes when artificially forcing naive squaring git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1136 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mul.c: reverted previous, too hasty commit; needs more thoughtenge2012-03-023-151/+8
| | | | | | | | | | 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
* sqr.c, mul.c: in the naive algorithm, redo computations with exact exponentsenge2012-03-022-9/+7
| | | | | | | | | in more cases; corrects bug for test + - 10 0b1e-1073741824 10 0 100 0b1@-536870912 100 0b1@-536870913 N N (not yet added to sqr.dat) git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1134 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* sqr: copied code for imaginary part from naive computation also to theenge2012-03-011-21/+11
| | | | | | | | | Karatsuba algorithm sqr.dat: added examples with imaginary part previously miscomputed by Karatsuba git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1133 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* sqr: rewrite of naive multiplication, reusing mpfr_fmma function from mulenge2012-03-011-144/+287
| | | | | | | | | to handle over-/underflow independently of emax/emin (needs further unification) sqr.dat: added tests git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1132 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [read_data.c] added random tests to check that MPC does not *clear* MPFR flagszimmerma2012-02-294-9/+58
| | | | | | | | | | (some flags might be *set* internally however) [pow.c,exp.c,norm.c,div.c] fix issues with MPFR flags which were cleared but not reset to their initial value [div.dat] updated current result of some commented out failing tests git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1131 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [sqr.c] fix for new sqr.dat failurezimmerma2012-02-291-0/+6
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1130 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/sqr.c] fixed overflow bug found by nightly tests on hydra.orgzimmerma2012-02-291-18/+27
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1128 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* define 0^0 as (1,+0), since the sign of the imaginary part cannot be determinedenge2012-01-231-28/+4
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1121 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* changed result for 0^0, according to the discussion onzimmerma2012-01-091-3/+29
| | | | | | | http://lists.gforge.inria.fr/pipermail/mpc-discuss/2011-December/001049.html git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1118 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc.h, mpc-impl.h, logging.c: correctly determine that logging.c belongsenge2011-12-203-1/+6
| | | | | | | | 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-042-8/+1
| | | | | | | 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-0462-919/+916
| | | | 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: remove duplicate __MPC_DECLSPEC definitionenge2011-11-041-6/+0
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1110 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* mpc.h. mpc-tests.h, mpc-impl.h: handle __MPC_DECLSPEC as for mpfr;enge2011-11-032-1/+16
| | | | | | | | 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
* tentative fix for win32 dllzimmerma2011-11-031-1/+1
| | | | | | | | cf http://sourceware.org/autobook/autobook/autobook_88.html and http://lists.gforge.inria.fr/pipermail/mpc-discuss/2011-November/000990.html git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1108 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* [src/pow.c] fixed further overlapping bugzimmerma2011-10-251-5/+15
| | | | git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1105 211d60ee-9f03-0410-a15a-8952a2c7a4e4
* fixed bug found by the automatic builds onzimmerma2011-10-241-2/+14
| | | | | | | http://hydra.nixos.org/build/1469029/log/raw git-svn-id: svn://scm.gforge.inria.fr/svn/mpc/trunk@1102 211d60ee-9f03-0410-a15a-8952a2c7a4e4