|
![](/images/spacer.gif) |
![](/images/spacer.gif) |
![](/images/spacer.gif) |
Changelog for mpfr-devel-4.2.1-lp154.97.1.i586.rpm :
* Tue Aug 22 2023 Richard Biener - Update to mpfr 4.2.1 * Includes all fixes from mpfr-4.2.0-cummulative.patch which is subsequently removed. * Improved MPFR manual. * Configure tests: replaced the test of the link with GMP, in order to avoid the use of a function without a prototype (Autoconf issue), as this is obsolescent in ISO C. The new test should be more robust. * Wed Jun 07 2023 Richard Biener - Update mpfr-4.2.0-cummulative.patch, adds patches fixing the following bugs * the mpfr_reldiff function, which computes |b-c|/b, is buggy on special values, e.g. on the following (b,c) values: (+Inf,+Inf) gives ±0 instead of NaN (like NaN/Inf); (+0,+0) gives 1 instead of NaN (like 0/0); (+0,1) gives 1 instead of Inf (like 1/0). Moreover, the sign of 0 for (+Inf,+Inf) or (-Inf,-Inf) is not set, i.e. it is just the sign of the destination before the call; as a consequence, results are not even consistent. * the reuse tests are incomplete: the sign of a result zero is not checked, so that it can miss bugs (one of the mpfr_reldiff bugs mentioned above, in particular). * the general code for the power function (mpfr_pow_general internal function) has two bugs in particular cases: the first one is an incorrect computation of the error bound when there has been an intermediate underflow or overflow (in such a case, the computation is performed again with a rescaling, thus with an additional error term, but there is a bug in the computation of this term), so that the result may be rounded incorrectly (in particular, a spurious overflow is possible); the second one occurs in a corner case (destination precision 1, rounding to nearest, and where the rounded result assuming an unbounded exponent range would be 2emin-2 and the exact result is larger than this value), with the only consequence being a missing underflow exception (the underflow flag is not set). * the mpfr_compound_si function can take a huge amount of memory and time in some cases (when the argument x is a large even integer and xn is represented exactly in the target precision) and does not correctly detect overflows and underflows * MPFR can crash when a formatted output function is called with %.2147483648Rg in the format string. * Tue Apr 18 2023 Richard Biener - Add mpfr-4.2.0-cummulative.patch, cummulative patches for mpfr 4.2.0: * A test of the thousands separator in tsprintf.c is based on the output from the GNU C Library up to 2.36, which is incorrect. * The mpfr_ui_pow_ui function has infinite loop in case of overflow. * The tfprintf and tprintf tests may fail in locales where decimal_point has several bytes, such as ps_AF. * In particular cases that are very hard to round, mpfr_rec_sqrt may yield a stack overflow due to many small allocations in the stack, based on alloca().- Remove tests-tsprintf.patch that\'s included in the above set. * Tue Jan 31 2023 Andreas Schwab - tests-tsprintf.patch: Avoid testsuite failure with glibc >= 2.37 * Mon Jan 09 2023 Richard Biener - Update to mpfr 4.2.0 * New functions mpfr_cosu, mpfr_sinu, mpfr_tanu, mpfr_acosu, mpfr_asinu, mpfr_atanu and mpfr_atan2u. * New functions mpfr_cospi, mpfr_sinpi, mpfr_tanpi, mpfr_acospi, mpfr_asinpi, mpfr_atanpi and mpfr_atan2pi. * New functions mpfr_log2p1, mpfr_log10p1, mpfr_exp2m1, mpfr_exp10m1 and mpfr_compound_si. * New functions mpfr_fmod_ui, mpfr_powr, mpfr_pown, mpfr_pow_uj, mpfr_pow_sj and mpfr_rootn_si (mpfr_pown is actually a macro defined as an alias for mpfr_pow_sj). * Bug fixes. In particular, for the formatted output functions (mpfr_printf, etc.), the case where the precision consists only of a period has been fixed to be like \".0\" as specified in the ISO C standard, and the manual has been corrected and clarified. The macros of the custom interface have also been fixed: they now behave like functions (except a minor limitation for mpfr_custom_init_set).- Remove mpfr-4.1.1-patch01.patch which is included in the new release. * Thu Nov 24 2022 Richard Biener - Add mpfr-4.1.1-patch01.patch to fix bug with code using the mpfr_custom_get_kind macro. * Sat Nov 19 2022 Andreas Stieger - package license files correctly * Fri Nov 18 2022 Richard Biener - Update to mpfr 4.1.1 * Bug fixes (see and/or the ChangeLog file), in particular for macros implementing functions. * Improved manual formatting. * Accumulated bugfixes- Remove mpfr-4.1.0-p7.diff, all patches are contained in the new version.- Update mpfr.keyring * Fri Feb 12 2021 Richard Biener - Add cummulative patch mpfr-4.1.0-p7.diff fixing various bugs. * Mon Jul 13 2020 Richard Biener - Update to mpfr 4.1.0 * New function mpfr_get_str_ndigits about conversion to a string of digits. * New function mpfr_dot for the dot product (incomplete, experimental). * New functions mpfr_get_decimal128 and mpfr_set_decimal128 (available only when MPFR has been built with decimal float support). * New function mpfr_cmpabs_ui. * New function mpfr_total_order_p for the IEEE 754 totalOrder predicate. * The mpfr_out_str function now accepts bases from -2 to -36, in order to follow mpfr_get_str and GMP\'s mpf_out_str functions (these cases gave an assertion failure, as with other invalid bases). * Shared caches: cleanup; really detect lock failures (abort in this case). * The behavior of the formatted output functions (mpfr_printf, etc.) with an empty precision field has improved: trailing zeros are kept in a way similar to the formatted output functions from C. * Improved mpfr_add and mpfr_sub when all operands have a precision equal to twice the number of bits per word, e.g., 128 bits on a 64-bit platform. * Optimized the tuning parameters for various architectures. * Improved test coverage to 98.6% of code for x86_64. * Bug fixes. * MPFR manual: corrected/completed the mpfr_get_str description in order to follow the historical behavior and GMP\'s mpf_get_str function.- Remove mpfr-4.0.2-p6.patch and floating-point-format-no-lto.patch * Wed Apr 01 2020 Richard Biener - Add cummulative patch mpfr-4.0.2-p6.patch fixing various bugs. * Mon Jul 15 2019 Martin Liška - Add floating-point-format-no-lto.patch in order to fix assembler scanning (boo#1141190). * Fri Feb 01 2019 rguentherAATTsuse.com- Update to mpfr 4.0.2 * Cummulative bugfix release, includes mpfr-4.0.1-cummulative-patch.patch. * Thu May 17 2018 antoine.belvireAATTopensuse.org- Fix %install_info_delete usage: * It has to be performed in %preun not in %postun. * See https://en.opensuse.org/openSUSE:Packaging_Conventions_RPM_Macros#.25install_info_delete. * Wed May 02 2018 rguentherAATTsuse.com- Add mpfr-4.0.1-cummulative-patch.patch. Fixes * A subtraction of two numbers of the same sign or addition of two numbers of different signs can be rounded incorrectly (and the ternary value can be incorrect) when one of the two inputs is reused as the output (destination) and all these MPFR numbers have exactly GMP_NUMB_BITS bits of precision (typically, 32 bits on 32-bit machines, 64 bits on 64-bit machines). * The mpfr_fma and mpfr_fms functions can behave incorrectly in case of internal overflow or underflow. * The result of the mpfr_sqr function can be rounded incorrectly in a rare case near underflow when the destination has exactly GMP_NUMB_BITS bits of precision (typically, 32 bits on 32-bit machines, 64 bits on 64-bit machines) and the input has at most GMP_NUMB_BITS bits of precision. * The behavior and documentation of the mpfr_get_str function are inconsistent concerning the minimum precision (this is related to the change of the minimum precision from 2 to 1 in MPFR 4.0.0). The get_str patch fixes this issue in the following way: the value 1 can now be provided for n (4th argument of mpfr_get_str); if n = 0, then the number of significant digits in the output string can now be 1, as already implied by the documentation (but the code was increasing it to 2). * The mpfr_cmp_q function can behave incorrectly when the rational (mpq_t) number has a null denominator. * The mpfr_inp_str and mpfr_out_str functions might behave incorrectly when the stream is a null pointer: the stream is replaced by stdin and stdout, respectively. This behavior is useless, not documented (thus incorrect in case a null pointer would have a special meaning), and not consistent with other input/output functions. * Wed Feb 07 2018 astiegerAATTsuse.com- update to 4.0.1: * Improved MPFR manual * bug fixes, including mpfr_div_ui, mpfr_div rounding issue * Tue Jan 02 2018 rguentherAATTsuse.com- Update to mpfr 4.0.0 * The \"dinde aux marrons\" release. * MPFR now depends on GMP 5.0+ instead of 4.1+. * API change: Applications that call GMP\'s mp_set_memory_functions function to change the allocators must first call the new function mpfr_mp_memory_cleanup in all threads where MPFR is potentially used; this new function is currently equivalent to mpfr_free_cache. The reason is that the way memory allocation is done by MPFR has changed (again), so that the current GMP allocators are used (since for some applications, the old allocators may become invalid). Note: Freeing the caches like this might have a performance impact on some particular applications; if this is an issue, this could be handled for a future MPFR version. * Mini-gmp support via the --enable-mini-gmp configure option (experimental). * The minimum precision MPFR_PREC_MIN is now 1, with rounding defined as in the errata of IEEE 754-2008 and in the following IEEE 754 revision (ties rounded away from zero). * Shared caches for multithreaded applications. New function mpfr_free_cache2. * Partial support of MPFR_RNDF (faithful rounding). * New functions: mpfr_fpif_export and mpfr_fpif_import to export and import numbers in a floating-point interchange format, independent both on the number of bits per word and on the endianness. * New function mpfr_fmodquo to return the low bits of the quotient corresponding to mpfr_fmod. * New functions mpfr_flags_clear, mpfr_flags_set, mpfr_flags_test, mpfr_flags_save and mpfr_flags_restore to operate on groups of flags. * New functions mpfr_set_float128 and mpfr_get_float128 to convert from/to the __float128 type (requires --enable-float128 and compiler support). * New functions mpfr_buildopt_float128_p and mpfr_buildopt_sharedcache_p. * New functions mpfr_rint_roundeven and mpfr_roundeven, completing the other similar round-to-integer functions for rounding to nearest with the even-rounding rule. * New macro mpfr_round_nearest_away to add partial emulation of the rounding to nearest-away (as defined in IEEE 754-2008). * New functions mpfr_nrandom and mpfr_erandom to generate random numbers following normal and exponential distributions respectively. * New functions mpfr_fmma and mpfr_fmms to compute a *b+c *d and a *b-c *d. * New function mpfr_rootn_ui, similar to mpfr_root, but agreeing with the rootn function of the IEEE 754-2008 standard. * New functions mpfr_log_ui to compute the logarithm of an integer, mpfr_gamma_inc for the incomplete Gamma function. * New function mpfr_beta for the Beta function (incomplete, experimental). * New function mpfr_get_q to convert a floating-point number into rational. * The mpfr_dump function is now described in the manual; its output format has slightly changed. * The mpfr_eint function now returns the value of the E1/eint1 function for negative argument. * The behavior of the mpfr_set_exp function changed, as it could easily yield undefined behavior in some cases (this modifies both the API and the ABI). * In function mpfr_urandom, the next random state no longer depends on the current exponent range and the rounding mode. The exceptions due to the rounding of the random number are now correctly generated, following the uniform distribution. * Functions mpfr_grandom and mpfr_root are deprecated and will be removed in a future release. * Complete rewrite of function mpfr_sum, which now works in all cases (the old one could take all the memory and/or crash with inputs of different magnitudes in case of huge cancellation or table maker\'s dilemma). The sign of an exact zero result is now specified, and the return value is now the usual ternary value. Note that the position of \"const\" in the mpfr_sum prototype has been fixed (the manual was correct); user code should not be affected. * Old, deprecated macros mpfr_add_one_ulp and mpfr_sub_one_ulp removed. The mpfr_next * functions should be used instead. * Internally, improved caching: a minimum of 10% increase of the precision is guaranteed to avoid too many recomputations. * Added internal small-precision mpz_t pool, which aims to avoid the overhead of memory allocation, in particular. New function mpfr_free_pool. * Added configure option --enable-assert=none to avoid checking any assertion. * The --enable-decimal-float configure option no longer requires - -with-gmp-build, and support for decimal floats is now automatically detected by default (similarly for support for __float128). * Updated tuning parameters. * Better support for Automake 1.13+ (now used to generate the tarball). * Dropped K&R C compatibility. * Improved MPFR manual. * New MPFRbench program (see the tools/bench directory). * Major speedup in mpfr_add, mpfr_sub, mpfr_mul, mpfr_div and mpfr_sqrt when all operands have the same precision and this precision is less than twice the number of bits per word, e.g., less than 128 on a 64-bit computer. * Speedup by a factor of almost 2 in the double <--> mpfr conversions (mpfr_set_d and mpfr_get_d). * Speedup in mpfr_log1p and mpfr_atanh for small arguments. * Speedup in the mpfr_const_euler function (contributed by Fredrik Johansson), in the computation of Bernoulli numbers (used in mpfr_gamma, mpfr_li2, mpfr_digamma, mpfr_lngamma and mpfr_lgamma), in mpfr_div, in mpfr_fma and mpfr_fms. * Test coverage: 96.3% lines of code. * Bug fixes. In particular: a speed improvement when the --enable-assert or --enable-assert=full configure option is used with GCC; mpfr_get_str now sets the NaN flag on NaN input and the inexact flag when the conversion is inexact. For a full list, see http://www.mpfr.org/mpfr-3.1.6/#fixed and the same section for any previous 3.1.x version (follow the links in the \"Changes...\" sections). * Microsoft Windows: Added support for thread-safe DLL (shared library). Tested with MinGW, ICC and MSVC. * Limited pkg-config support. * Autotools: Under Linux, make sure that the old dtags (when supported) are used if LD_LIBRARY_PATH is defined; otherwise \"make check\" would check an installed, compatible MPFR library found in LD_LIBRARY_PATH instead of the one that has been built with \"make\". * New: optional \"make check-gmp-symbols\", mainly for binary distributions, to check that MPFR does not use GMP internal symbols (experimental). * Tue Sep 12 2017 rguentherAATTsuse.com- Update to mpfr 3.1.6 release * Includes mpfr-3.1.5-p9.patch * Tue Jul 25 2017 rguentherAATTsuse.com- Add mpfr-3.1.5-p9.patch with cummulative patches to patchlevel p9, obsoletes mpfr-3.1.5-p8.patch. * Wed Jun 07 2017 rguentherAATTsuse.com- Add mpfr-3.1.5-p8.patch with cummulative patches to patchlevel p8. * Fri Nov 11 2016 dimstarAATTopensuse.org- Follow openSUSE Packaging Guidelines: do not packae static libraries: + Pass --disable-static to configure. * Tue Sep 27 2016 rguentherAATTsuse.com- Update to mpfr 3.1.5: * C++11 compatibility. * Bug fixes (see and ChangeLog file). * More tests. * Sun Mar 06 2016 astiegerAATTsuse.com- mpfr 3.1.4, incorporating the cumulative patch, plus a number of upstream fixes- removing mpfr-3.1.3-patch1to12.patch * Wed Feb 17 2016 rguentherAATTsuse.com- Add cummulative patch mpfr-3.1.3-patch1to12.patch * Bug fixes (see * Sun Jun 21 2015 astiegerAATTsuse.com- update to 3.1.3: * Better support for Automake 1.13+ (now used to generate the tarball). * Improved MPFR manual. * Bug fixes (see and ChangeLog file)- drop upstreamed mpfr-3.1.2-patch11.diff * Sun Mar 01 2015 mpluskalAATTsuse.com- Cleanup spec file with spec-claner- Add gpg signature * Thu Jan 08 2015 rguentherAATTsuse.com- Add mpfr-3.1.2-patch11.diff to fix possible buffer overflow in mpfr_strtofr (CVE-2014-9474). [bnc#911812]
|
|
|