| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
| |
* Export the tests_memory_limit variable so that it can be accessed in
test programs (e.g. read by tversion as mentioned below, or modified
by a test program when executed with particular arguments).
* In tversion, print a warning when the memory limit has been modified
(with the MPFR_TESTS_MEMORY_LIMIT environment variable).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10460 280ebfd0-de03-0410-8827-d642c229c3f4
|
|
|
|
|
|
|
| |
now contain an integer specifying the memory limit for the tests, or 0
for unlimited, the default still being 2^22 = 4 MB.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10459 280ebfd0-de03-0410-8827-d642c229c3f4
|
|
|
|
|
|
|
|
| |
* Also do the tests with output precision MPFR_PREC_MIN;
this completes the value coverage for tsum.
* Also compare the flags.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10457 280ebfd0-de03-0410-8827-d642c229c3f4
|
|
|
|
|
|
|
|
| |
and sq == MPFR_PREC_MIN, 42 tests were not done for sq == MPFR_PREC_MIN
on a 64-bit machine. In the check4 test, changed a 2 to MPFR_PREC_MIN.
This reduces to 12 tests that are not done.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10456 280ebfd0-de03-0410-8827-d642c229c3f4
|
|\
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
* limited implementation of "unbounded floats" (numbers with a mpz_t
exponent), which could be completed in the future, in particular to
handle intermediate overflows/underflows in polynomial evaluation;
* rewrote mpfr_fmma and mpfr_fmms to use them, and added tests;
* restored the MPFR 3.1- exponent range for compatibility;
* restored some tests that were based on this exponent range.
The choice for the UBF implementation was to use a compatible structure:
the same as the mpfr_t one, with an additional field at the end, used
only when the exponent field _mpfr_exp has some special value. Thus some
functions such as addition and subtraction just needed minor changes to
support UBF, and no code was duplicated. This means that on MPFR numbers
(the usual case), one has a few more tests than before, but with known
branch probabilities. In practice, this should not be visible, at least
in most applications. This was more or less confirmed by timings (even
with many additions/subtractions in low precision, this was difficult
to say, as timings were influenced by various parameters that we cannot
control).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10454 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10453 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10452 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10451 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10450 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| | |
as the ' flag is an extension from Single UNIX Specification and
in particular, they fail with MinGW under Wine.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10449 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10448 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10447 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10446 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10445 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10444 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
incorrect result with tcc: x.s.exp is declared as an unsigned
bit-field, so that tcc considers that x.s.exp - 1023 is unsigned.
However, since all the values of x.s.exp are representable in an
int, according to the integer promotion rules, x.s.exp should be
converted to an int, so that the subtraction is signed. So, this
appears to be a bug in tcc.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10443 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| | |
tcc 0.9.27~git20151227.933c223-1 (there's already one in special(),
but this one is a simpler, standalone test).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10442 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10441 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| |
| | |
check whether C99 constants (in particular the __float128 ones, such
as 0x1.fp+16383q) are supported since this is now required with the
__float128 support.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10440 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10439 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| | |
in the "if (fb > 0)" branch.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10435 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| | |
by comparisons with the maximum finite binary128 number. Changes to be
similar to the handling of infinities in "src/set_ld.c".
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10434 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10433 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| | |
and implementation.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10432 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10431 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| | |
generates a divide-by-zero exception. Suggest a solution.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10430 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| | |
and absence of signed zeros. Also fixed the code checking the sign
of 0 (mpfr_sgn cannot be used for that since it returns 0 for ±0).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10429 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10427 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| | |
when GMP_NUMB_BITS == 32.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10426 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10425 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10424 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10423 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10417 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10422 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| | |
on the exponent values, diff_exp does not need to be the unsigned
integer type mpfr_uexp_t (mpfr_exp_t is sufficient).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10421 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10420 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10419 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| |
| | |
that the add1sp and sub1sp conditions are satisfied with the current
src code, these tests may rely on the fact that there are no trailing
bits, i.e. that the precision is a multiple of GMP_NUMB_BITS).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10418 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| |
| | |
mpfr_sub1sp and mpfr_add1sp, which do not support UBF, are never
called on UBF numbers. This should also (very slightly) speed up
the normal cases.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10416 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| | |
MPFR_ARE_SINGULAR_OR_UBF macros.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10415 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| | |
is twice the precision of each input, which can currently involve
add1sp.c and sub1sp.c code.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10403 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10397 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| | |
mpfr_overflow (x is not an input in these functions).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10396 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| |
| | |
and printf. Removed 2 MPFR_LOG_VAR, as the variable is not normalized
yet. Re-added #ifdef DEBUG for the MPFR_LOG_MSG's since this may be
too low level and not much useful except in case of bugs.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10395 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10390 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10391 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| | |
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10389 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |\
| |/
|/|
| |
| |
| | |
trunk.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/branches/ubf@10388 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| | |
test case, added in r10383).
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10386 280ebfd0-de03-0410-8827-d642c229c3f4
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In MPFR_RNDN (rounding to nearest), when |b| is the midpoint between
the maximum number and 2^emax (the maximum number + 1 ulp) and c is
small, the obtained result is an infinity (with overflow) instead of
± the maximum number (no overflow). The cause is that an overflow is
generated too early (in the rounding code).
[tests/tsub.c] Added test cases.
git-svn-id: svn://scm.gforge.inria.fr/svn/mpfr/trunk@10383 280ebfd0-de03-0410-8827-d642c229c3f4
|